Scroll Animation Html css js?
Wie kann ich es so machen, dass man zu einer id weitergeleitet wird, sobald man scrollt? Also so eine Scrollhilfe, die den User auf die nächste Sektion smooth weiterleitet, beim ersten mal Scrollen? Mit JavaScript
2 Antworten
Hi Floori778,
dafür gibt es verschiedene Ansätze in CSS und JavaScript bzw. sogar aus der Combi daraus. Der einfachste Weg ist CSS und Anker zu verwenden.
Hier eine Lösung in HTML und CSS:
html { scroll-behavior: smooth; }
Hier der HTML-Code:
<a href="#section2">Zu Abschnitt 2 scrollen</a>
<section id="section2"> <h2>Abschnitt 2</h2> <p>Dies ist der Inhalt von Abschnitt 2.</p> </section>
Damit lässt sich ohne JavaScript eine Scroll-Effekt für die Seite erstellen.
Eine weitere Lösung wäre die Nutzung von JavaScript. Damit lassen sich auch solche Effekte generieren:
document.querySelector('a').addEventListener('click', function(event) { event.preventDefault(); document.querySelector('#section2').scrollIntoView({ behavior: 'smooth' }); });
Ich hoffe der Code hilft dir weiter. Gerne gebe ich dir Links dazu aus Selfhtml:
https://wiki.selfhtml.org/wiki/CSS/Eigenschaften/scroll-behavior
https://wiki.selfhtml.org/wiki/JavaScript/Window/scroll
Viel Erfolg bei der Umsetzung
Du kannst entweder die Funktion scrollIntoView verwenden oder versuchen mit CSS scroll snap zu arbeiten.
Safari unterstützt bei scrollIntoView meine ich keine Animation, andere Browser dagegen schon.
Scroll Snap funktioniert meines Wissens nach bei allen Browsern ganz gut.