Summary

  • Der erste öffentliche W3C-Entwurf von 2015 beschrieb am Fotoalbum, wie ein ungenauer Wisch eine Seite halb im Fenster stehen lässt, und führte Haltepunkte für den Scroll-Container ein.
  • Spätere Texte legten die Stärke des Einrastens am Container und die Ausrichtung am einzelnen Element fest. Bewegung und endgültige Position liegen beim Browser.

Eine Bildredakteurin hat eine Reportage sorgfältig sortiert. Auf dem Telefon passen die Fotos nur einzeln ins Fenster. Der Leser wischt, und die Reihe bleibt zwischen zwei Aufnahmen stehen. Man könnte Pfeiltasten einbauen und jeden Schritt selbst steuern; dann hätte das Album einen Hausmeister, der bei jedem Bild den Schlüssel umdreht. Die CSS-Arbeitsgruppe wählte die kleinere Regel: Ein Scroll-Vorgang bleibt ein Scroll-Vorgang, bekommt aber sinnvolle Orte für sein Ende.

Der erste öffentliche Entwurf vom 26. März 2015 hieß CSS Scroll Snap Points und begann mit dem Fotoalbum. Berührungen und Mausräder landen nicht automatisch auf einer sauberen Seitengrenze. Deshalb beschrieb der Text Positionen, an denen das sichtbare Fenster des Containers nach dem Scrollen ruhen kann. mandatory verlangte nach Möglichkeit einen solchen Punkt; bei proximity durfte der User Agent entscheiden, ob ein naher Punkt erreicht werden sollte. Wiederholte Punkte entlang einer Achse und Punkte einzelner Elemente kamen hinzu. Die Seite zeichnete die Stellplätze, der Browser lenkte ein.

Die CSS-Arbeitsgruppe protokollierte im Dezember 2015 den Umbau: Matt Rakow führte Bereich und Ausrichtung zusammen; aus der alten Koordinate sollten scroll-snap-align und eine Snap-Fläche werden, aus dem Zielpunkt Padding. Bei der Sitzung in San Francisco im Mai 2016 standen übergroße Bilder, nicht sichtbare Ziele und unerreichbare Flächen auf dem Tisch. Ein mathematisch sauberer Stellplatz hilft wenig, wenn das Foto größer ist als die Einfahrt oder der Platz hinter einer Wand liegt.

Im Entwurf vom 23. Juni 2016 wurde die Ausrichtung zum Kern der Erklärung. scroll-snap-type am Container bestimmte das Verhalten, scroll-snap-align am Foto beschrieb, welche Kante oder Mitte zum Sichtfenster passen sollte. Eine Aufnahme konnte also ihren bevorzugten Auftritt angeben, ohne dass die Redaktion Geschwindigkeit und Reibung des Fingers ausrechnete. Die genaue Bewegung blieb Sache des Browsers. Das Dokument zeigte außerdem an einer langen Seite, warum proximity wichtig sein kann: Wer mitten in einem Abschnitt lesen will, braucht keinen übereifrigen Fremdenführer, der ihn zum nächsten Marker zieht.

Die Candidate Recommendation vom 14. August 2018 beschrieb die Aufgabenteilung mit scroll-snap-type, scroll-snap-align, scroll-padding und scroll-margin genauer. Abstände können den wirksamen Rahmen verschieben, etwa damit ein feststehender Kopfbereich das Motiv nicht verdeckt. Die Bildredaktion legt eine Komposition fest; sie muss keine eigene Bewegungsmaschine für jeden Daumen bauen.

Die Candidate Recommendation vom 11. März 2021 führte das Modell fort und erklärte, wie eine gültige Endposition gewählt wird. Der Leser beginnt den Vorgang, die Stylesheet-Regeln nennen Ausrichtungen, der Browser bringt die Ansicht zur Ruhe. Eine kurze Bilderreihe kann ein festes Einrasten vertragen. Ein langer Text verlangt womöglich Platz zum Anhalten zwischen den Markierungen. mandatory und proximity entscheiden über diese Erfahrung, nicht nur über eine Eigenschaft im Quelltext.

Die W3C-Publikationsgeschichte verbindet 2015, 2016, 2018 und 2021. Hier geht es um das Ende eines vom Leser gewollten Scrollens. Bei Scroll Anchoring wird dagegen die Leseposition gegen später eintreffende Inhalte verteidigt. Im Fotoalbum stellt die Redaktion die Bilder auf, der Leser blättert, und der Browser parkt möglichst vor einem Bild statt quer über zwei.