Ein Blog

Man kann in mit JS ohne jQuery ein Element “smooth” in den sichtbaren Bereich scrollen:

el.scrollIntoView({
    behavior: "smooth",
});

Man kann zu html-anchor auch ohne JS scrollen, mit CSS:

html {
    scroll-behavior: smooth;
}

Dann im HTML:

<a href="#tolle-ueberschrift">Klick hier</a>
<h1 id="tolle-ueberschrift">Es folgt ein toller Artikel...</h1>

MDN dazu, CanIUse dazu

Wer Probleme damit hat, dass auf mobilgeräten mit Touchscreen manchmal Dinge gescrollt werden, die eigentlich nicht gescrollt werden sollten, den rettet vielleicht die overscroll-behavior-Eigenschaft.