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 fest, ob Zeilenlinien dort in Segmente unterteilt werden, wo sie Spaltenabstände 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

Für diese Eigenschaft wird eines der folgenden Schlüsselwörter angegeben:

none

Zeilenlinien werden beim Kreuzen von Spaltenabständen nicht unterbrochen. Stattdessen wird eine durchgehende Zeilenlinie über die gesamte Breite des Containers von einer Kante zur anderen gezeichnet.

normal

Verhält sich in Grid-, Flex- und Multi-Column-Layouts wie none. Dies ist der Standardwert.

intersection

Zeilenlinien werden immer unterbrochen, wenn sie Spaltenabstände kreuzen. Die Zeilenliniensegmente beginnen und enden an den Kanten des Containers oder der Abstände.

Beschreibung

Die Eigenschaft row-rule-break legt fest, ob Zeilenlinien beim Kreuzen von Spaltenabständen in Segmente unterteilt werden.

Zeilenlinien werden innerhalb eines Zeilenabstands als ein oder mehrere Segmente gezeichnet. Solche Segmente liegen zwischen benachbarten Grid-Elementen in verschiedenen Zeilen, zwischen Flex-Elementen oder Flex-Zeilen – abhängig von flex-direction im Flex-Layout – oder zwischen benachbarten Spaltenzeilen in Multi-Column-Layouts, wenn column-height mehrere Spaltenzeilen erzeugt.

Die Eigenschaft row-rule-break bestimmt nur, ob eine Unterbrechung erfolgt. Standardmäßig entspricht der Abstand zwischen Zeilenliniensegmenten der Breite des Spaltenabstands, da jedes Segment an der Kante des Abstands oder des Containers beginnt und endet. Beträgt der Abstand 0, ist die Unterbrechung möglicherweise nicht sichtbar. Die Endpositionen lassen sich mit den Eigenschaften von row-rule-inset steuern.

Wenn row-rule-break auf none gesetzt ist, gibt es keine Unterbrechungen: Die Zeilenlinie ist durchgehend, und Werte für row-rule-inset wirken sich nur auf die Zeilenlinie an der linken und rechten Kante des Containers aus. Gibt es Unterbrechungen, beeinflussen die Eigenschaften von row-rule-inset den Anfang und das Ende jedes Zeilenliniensegments.

Die Eigenschaft row-rule-break kann zusammen mit column-rule-break über die Kurzschreibweise rule-break festgelegt werden.

Ob eine Zeilenlinie standardmäßig aus einem einzigen durchgehenden Segment besteht oder beim Kreuzen von Spaltenabständen unterbrochen wird, hängt vom Containertyp ab.

Grid-Container

In Grid-Containern verlaufen Zeilenliniensegmente standardmäßig durch sichtbare kreuzförmige Schnittpunkte hindurch. Mit row-rule-break: intersection werden die Segmente an jedem Spaltenabstand unterbrochen, den sie andernfalls kreuzen würden.

Standardmäßig werden Zeilenlinien nicht unterbrochen. Aktivieren Sie das Kontrollkästchen, um row-rule-break auf intersection zu setzen. Dadurch werden die durchgehenden Linien an jedem kreuzförmigen Schnittpunkt unterbrochen. Standardmäßig entspricht die Unterbrechung zwischen den Segmenten der Breite von column-gap.

Flex-Container

Wenn flex-direction in Flexbox bei horizontalen Schreibrichtungen row oder row-reverse ist, verläuft die Zeilenlinie durchgehend, während die Spaltenliniensegmente an den Kanten der Zeilenabstände beginnen und enden. Bei column oder column-reverse verläuft die Spaltenlinie durchgehend, während die Zeilenliniensegmente an den Kanten der Spaltenabstände beginnen und enden.

Bei horizontalen Schreibrichtungen verläuft die Zeilenlinie mit row oder row-reverse standardmäßig durchgehend. Mit column oder column-reverse wird sie dagegen an jedem Spaltenabstand unterbrochen. Wird row-rule-break auf intersection gesetzt, wirkt sich dies nur in den Fällen row und row-reverse auf die Zeilenlinien aus.

Multi-Column-Container

In Multi-Column-Containern verhält sich der Standardwert normal wie none.

Wenn Sie intersection auswählen, wird die Zeilenlinie an jedem Spaltenabstand in Segmente unterteilt. Jedes Segment beginnt und endet an der Kante des Abstands. Die Anfangs- und Endpositionen lassen sich mit den Eigenschaften von row-rule-inset ändern.

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 die Zeilenlinie in einem Grid-Container an jedem Spaltenabstand zu unterbrechen. Wenn Sie die Eigenschaft column-gap ändern, ändert sich die Größe der Unterbrechungen.

HTML

Wir erstellen eine Liste mit 50 Elementen und einen Schieberegler, mit dem sich die Breite des Spaltenabstands ändern lässt. 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 acht Spalten. Mit der Eigenschaft grid-template-columns erzeugen wir Spalten und Zeilen und setzen list-style-type auf none, um die Aufzählungszeichen zu entfernen. Außerdem legen wir mit gap einen Abstand von 20px fest, damit zwischen den Spalten und Zeilen genügend Platz für unsere durchgezogenen, 20px breiten Spalten- und Zeilenlinien ist. Schließlich legen wir fest, dass die Zeilenlinien an jedem Schnittpunkt in Segmente unterteilt 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 Spaltenabstände und beobachten Sie, wie die Unterbrechungen zwischen den Zeilenliniensegmenten größer werden. Verringern Sie die Breite des Spaltenabstands auf 0px: Die Zeilenverzierung wirkt nun durchgehend, ist es aber nicht. Der Abstand von 0px zwischen den Segmenten ist möglicherweise nicht sichtbar. Die Segmente beginnen und enden jedoch weiterhin am Spaltenabstand, sodass mit den Eigenschaften von row-rule-inset festgelegte Versätze weiterhin angewendet werden.

Spezifikationen

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

Browser-Kompatibilität

Siehe auch