Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

scroll-initial-target

Limited availability

This feature is not Baseline because it does not work in some of the most widely-used browsers.

Experimentell: Dies ist eine experimentelle Technologie
Überprüfen Sie die Browser-Kompatibilitätstabelle sorgfältig vor der Verwendung auf produktiven Webseiten.

Die scroll-initial-target CSS Eigenschaft ermöglicht die Definition von Elementen, die potenzielle Snap-Ziele sind, wenn ihr übergeordneter Scroll-Container zuerst gerendert wird.

Syntax

css
/* Keyword values */
scroll-initial-target: none;
scroll-initial-target: nearest;

/* Global values */
scroll-initial-target: inherit;
scroll-initial-target: initial;
scroll-initial-target: revert;
scroll-initial-target: revert-layer;
scroll-initial-target: unset;

Werte

none

Das Element ist kein initiales Scroll-Ziel.

nearest

Das Element ist potenziell ein initiales Scroll-Ziel für seinen nächsten übergeordneten Scroll-Container.

Beschreibung

Die Eigenschaft scroll-initial-target ermöglicht die Definition von Elementen, die gesnappt werden sollten, wenn ihre übergeordneten Scroll-Snap Container zuerst gerendert werden. Wenn der Wert auf nearest gesetzt ist, wird das Element als potenzielles Ziel definiert, das gesnappt werden sollte, wenn der nächste übergeordnete Scroll-Container auf der Seite angezeigt wird.

Wenn mehrere Elemente oder Pseudo-Elemente im Scroll-Container auf nearest gesetzt sind, ist das erste Element in der Baumreihenfolge das initiale Scroll-Snap-Ziel.

Der Anfangswert ist none, was bedeutet, dass ein scroll-snapfähiges Element standardmäßig kein initiales Scroll-Ziel ist. Der Wert none kann auch auf ein Element gesetzt werden, um es explizit nicht als initiales Scroll-Ziel festzulegen.

Wenn eine anfängliche Scroll-Position eines Scroll-Containers potenziell sowohl durch die place-content Inhaltsverteilungs-Eigenschaft als auch durch scroll-initial-target auf irgendeinem Nachkommen gesetzt wird - gewinnt der erste Nachkomme mit scroll-initial-target: nearest.

Formale Definition

Anfangswertnone
Anwendbar aufalle Elemente
VererbtNein
Berechneter Wertthe specified keyword
AnimationstypNot animatable

Formale Syntax

scroll-initial-target = 
none |
nearest

Beispiele

Verwendung von scroll-initial-target

Das folgende Beispiel demonstriert die zwei Werte von scroll-initial-target und wie das erste Element mit scroll-initial-target gesnappt wird.

HTML

Wir fügen 5 Container ein, die von einem Absatz eingeleitet werden, der die erwartete Wirkung erklärt.

html
<p><code>none</code> on #4 only</p>
<div class="none">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div class="set">4</div>
  <div>5</div>
</div>

<p><code>nearest</code> on #4 only</p>
<div class="nearest">
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div class="set">4</div>
  <div>5</div>
</div>

<p><code>nearest</code> on even elements</p>
<div class="nearest">
  <div>1</div>
  <div class="set">2</div>
  <div>3</div>
  <div class="set">4</div>
  <div>5</div>
</div>

<p><code>nearest</code> on odd elements</p>
<div class="nearest">
  <div class="set">1</div>
  <div>2</div>
  <div class="set">3</div>
  <div>4</div>
  <div class="set">5</div>
</div>

<p><code>nearest</code> on odd elements, with <code>none</code> on #1</p>
<div class="nearest">
  <div class="set unset">1</div>
  <div>2</div>
  <div class="set">3</div>
  <div>4</div>
  <div class="set">5</div>
</div>

CSS

Wir richten die nächstgelegenen und keine Elemente als Scroll-Snap-Container ein und zentrieren die gesnappten Elemente.

css
/* mandatory scroll-snap on parent */
div.nearest,
div.none {
  scroll-snap-type: x mandatory;
}

/* scroll-snap alignment for children */
div > div {
  scroll-snap-align: center;
  scroll-initial-target: always;
}

Wir setzen dann scroll-initial-target von entweder none oder nearest auf allen Elementen mit der Klasse .set.

css
.none .set,
.nearest .set.unset {
  scroll-initial-target: none;
}
.nearest .set {
  scroll-initial-target: nearest;
}

Ergebnis

Die Wirkung der Eigenschaft wird demonstriert, wenn der Scroll-Snap-Container auf der Seite gezeichnet wird.

Jede Zeile snappt zum ersten Element mit nearest in der Baumreihenfolge, falls vorhanden. Im letzten Beispiel haben wir den nearest Wert mit none auf dem ersten Element überschrieben, sodass das erste Element mit angewendetem nearest #3 ist.

Spezifikationen

Specification
CSS Scroll Snap Module Level 2
# propdef-scroll-initial-target

Browser-Kompatibilität

Siehe auch