Hur skapar man: Smidig rullning
- Föregående sida Rullande ritning
- Nästa sida Gradient bakgrund rullning
Lär dig hur du skapar smidiga rullande effekter med CSS.
smidig rullning
Section 1
Klicka mig, smidig rullning till nedre del 2.Klicka på länken för att se den "smidiga" rullningen.
Observera:Ta bort scroll-behavior-attributet för att avsluta smidig rullning.
smidig rullning
Lägg till scroll-behavior: smooth
Du kan aktivera smidig rullning för hela sidan:
Observera:Det kan också läggas till till specifika element/scroll-container.
Exempel
html { scroll-behavior: smooth; }
Webbläsarstöd
Tal i tabellen anger den första webbläsaren som fullständigt stöder scroll-behavior-attributet.
Chrome | Edge | Firefox | Safari | Opera |
---|---|---|---|---|
Chrome | Edge | Firefox | Safari | Opera |
61.0 | 79.0 | 36.0 | 14.0 | 48.0 |
korsbläddringslösning
för webbläsare som inte stöder scroll-behavior
browsrar, kan du använda JavaScript eller JavaScript-bibliotek (som jQuery)för att skapa en lösning som fungerar i alla webbläsare:
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <script> $("document").ready(function(){ // Lägg till smidig rullning för alla länkar $("a").on('click', function(event) { // Se till att this.hash har ett värde innan du överskriver standardbeteendet if (this.hash !== "") { // Förhindra standardbeteende för ankerklick event.preventDefault(); // Lagra hash-värdet var hash = this.hash; // Använd jQuery:s animate() metod för att lägga till smidig sidorullning // Valfritt nummer (800) specificerar antalet millisekunder som krävs för att rulla till det angivna området $('html, body').animate({ scrollTop: $(hash).offset().top }, 800, function(){ // Lägg till hash (#) till URL efter att rulla klart (standardklickbeteende) window.location.hash = hash; ); } // Avsluta om ); ); </script>
Relaterade sidor
Referenshandbok:CSS scroll-behavior egenskap
- Föregående sida Rullande ritning
- Nästa sida Gradient bakgrund rullning