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

View in English Always switch to English

row-rule-break CSS property

Eingeschränkt verfügbar

Diese Funktion ist nicht Baseline, da sie in einigen der am weitesten verbreiteten Browser nicht funktioniert.

Want more browser support for this feature? Tell us why.

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

Die CSS-Eigenschaft row-rule-break legt das Verhalten für das Aufteilen von Zeilenregeln in Segmente fest, wenn Zeilenregeln Spaltenlücken kreuzen.

Probieren Sie es aus

row-rule-break: none;
row-rule-break: normal;
row-rule-break: intersection;
<section id="default-example">
  <div id="example-element">
    <i>A</i>
    <i>B</i>
    <i>C</i>
    <i>D</i>
    <i>E</i>
    <i>F</i>
    <i>G</i>
    <i>H</i>
    <i>I</i>
    <i>J</i>
    <i>K</i>
    <i>L</i>
    <i>M</i>
    <i>N</i>
    <i>O</i>
    <i>P</i>
    <i>Q</i>
    <i>R</i>
    <i>S</i>
    <i>T</i>
    <i>U</i>
    <i>V</i>
    <i>W</i>
    <i>X</i>
    <i>Y</i>
    <i>Z</i>
  </div>
</section>
#example-element {
  display: grid;
  grid-template-columns: repeat(7, 1fr);
  row-rule: solid thick orange;
  column-rule: solid thick lavender;
  gap: 15px;
}
#example-element i {
  padding: 5px;
}

Syntax

css
/* Keyword values */
row-rule-break: none;
row-rule-break: normal;
row-rule-break: intersection;

/* Global values */
row-rule-break: inherit;
row-rule-break: initial;
row-rule-break: revert;
row-rule-break: revert-layer;
row-rule-break: unset;

Werte

Diese Eigenschaft wird als einzelnes Schlüsselwort aus der folgenden Liste angegeben:

none

Es gibt keine Unterbrechungen in Zeilenregeln, wenn sie Spaltenlücken kreuzen; stattdessen wird eine durchgehende Zeilenregel über die gesamte Breite des Containers von Kante zu Kante gezeichnet.

normal

Verhält sich in Grid- und Flex-Containern wie none. Verhält sich in Multi-Col wie none. Dies ist der Standardwert.

intersection

Zeilenregeln werden immer unterbrochen, wenn sie Spaltenlücken kreuzen, wobei Zeilenregelsegmente an Container- und Lückenkanten beginnen und enden.

Beschreibung

Die Eigenschaft row-rule-break legt fest, ob Zeilenregeln beim Kreuzen von Spaltenlücken in Segmente aufgeteilt werden oder nicht.

Zeilenregeln werden innerhalb einer Zeilenlücke als ein oder mehrere Segmente gezeichnet, wobei Segmente zwischen benachbarten Grid-Elementen in getrennten Zeilen, zwischen Flex-Elementen oder Flex-Linien abhängig von flex-direction in Flex-Layouts oder in Lücken zwischen benachbarten Spaltenzeilen in Multi-Col-Layouts auftreten, wenn column-height mehrere Spaltenzeilen erzeugt.

Die Eigenschaft row-rule-break bestimmt nur, ob die Unterbrechung erfolgt. Standardmäßig entspricht die Unterbrechung oder der Abstand zwischen Zeilenregelsegmenten der Breite der Spaltenlücke, da jedes Segment an der Kante der Lücke (oder der Kante des Containers) beginnt und endet. Wenn die Lücke 0 beträgt, ist diese Unterbrechung möglicherweise nicht sichtbar. Die Endpositionen können mit den Eigenschaften row-rule-inset gesteuert werden.

Wenn row-rule-break auf none gesetzt ist, gibt es keine Unterbrechungen, die Zeilenregellinie ist durchgehend, und alle Werte von row-rule-inset wirken sich nur auf die Zeilenregel an der linken und rechten Kante des Containers aus. Wenn Unterbrechungen vorhanden sind, wirken sich die Eigenschaften row-rule-inset auf den Anfang und das Ende jedes Zeilenregelsegments aus.

Die Eigenschaft row-rule-break kann zusammen mit der Eigenschaft column-rule-break mithilfe der Kurzform rule-break gesetzt werden.

Ob eine Zeilenregel standardmäßig aus einem einzelnen durchgehenden Segment oder aus Segmenten besteht, die beim Kreuzen von Spaltenlücken unterbrochen werden, hängt vom Containertyp ab.

Grid-Container

In Grid-Containern verlaufen Zeilenregelsegmente standardmäßig durch sichtbare „Kreuz“-Schnittpunkte hindurch. Durch das Setzen von row-rule-break: intersection werden die Segmente an jeder Spaltenlücke unterbrochen, an der sie ansonsten kreuzen würden.

Standardmäßig gibt es keine Unterbrechungen der Zeilenregeln. Aktivieren Sie das Kontrollkästchen, um ow-rule-break auf intersection zu setzen, wodurch die durchgehenden Regeln an jedem „Kreuz“-Schnittpunkt unterbrochen werden. Standardmäßig entspricht die Unterbrechung zwischen Segmenten der Breite von column-gap.

Flex-Container

In Flexbox ist die Zeilenregel bei flex-direction row oder row-reverse in horizontalen Schreibrichtungen durchgehend, wobei die Spaltensegmente an den Kanten der Zeilenlücken beginnen und enden. Bei flex-direction column oder column-reverse ist die Spaltenregel durchgehend, wobei die Zeilensegmente an den Kanten der Spaltenlücken beginnen und enden.

In horizontalen Schreibrichtungen ist die Zeilenregel bei row oder row-reverse standardmäßig durchgehend, während die Zeilenregel bei column oder column-reverse an jeder Spaltenlücke unterbrochen wird. Das Setzen von row-rule-break auf intersection wirkt sich nur auf die Zeilenregeln in den Szenarien row und row-reverse aus.

Multi-Col-Container

In Multi-Col-Containern verhält sich das Standardverhalten normal genauso wie none.

Wenn Sie intersection auswählen, wird die Zeilenregel immer dann in Segmente unterbrochen, wenn sie eine Spaltenlücke erreicht, wobei jedes Segment an der Kante der Lücke beginnt und endet. Die Anfangs- und Endpositionen können mit den Eigenschaften row-rule-inset geändert werden.

Formale Definition

Wert in der Datenbank nicht gefunden!

Formale Syntax

row-rule-break = 
none |
normal |
intersection

Beispiele

Grundlegende Verwendung

In diesem Beispiel verwenden wir die Eigenschaft row-rule-break, um jedes Regelsegment in einem Grid-Container zu unterbrechen, sodass Zeilenregelsegmente zwischen Spaltenlücken erstellt werden. Das Ändern der Eigenschaft column-gap verändert die Größe der Segmente.

HTML

Wir erstellen eine Liste mit 50 Elementen und einen Schieberegler, um die Breite der Spaltenlücke zu ändern. Der Großteil des HTML ist der Kürze halber ausgeblendet.

html
<ul>
  <li>1</li>
  <li>2</li>
  ...
  <li>49</li>
  <li>50</li>
</ul>

CSS

Wir definieren die ungeordnete Liste als Container mit 8 Spalten, erstellen mit der Eigenschaft grid-template-columns Spalten und Zeilen und setzen list-style-type auf none, um die Aufzählungszeichen zu entfernen. Wir fügen ein gap von 20px ein, um genügend Platz zwischen den Spalten und Zeilen für unsere durchgehenden Spalten- und Zeilenregeln mit 20px Breite zu schaffen. Abschließend legen wir fest, dass die Zeilenregeln an jedem Schnittpunkt in Segmente unterbrochen werden.

css
ul {
  display: grid;
  grid-template-columns: repeat(8, 1fr);
  list-style-type: none;
  gap: 20px;

  row-rule: 10px solid olive;
  column-rule: 10px solid palegoldenrod;

  row-rule-break: intersection;
}

Der Rest des CSS ist der Kürze halber ausgeblendet.

Ergebnis

Vergrößern Sie die Spaltenlücken und beachten Sie, wie die Unterbrechungen zwischen Zeilensegmenten größer werden. Verringern Sie die Breite der Spaltenlücke auf 0px und beachten Sie, wie die Zeilendekoration durchgehend erscheint. Sie ist es nicht! Die 0px-Lücke zwischen Segmenten ist möglicherweise nicht sichtbar, aber die Segmente beginnen und enden weiterhin an der Lücke, sodass alle mit den Eigenschaften row-rule-inset festgelegten Versätze weiterhin angewendet werden.

Spezifikationen

Spezifikation
CSS Gaps Module Level 1
# propdef-row-rule-break

Browser-Kompatibilität

Siehe auch