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-inset-junction 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-Kurzschreibweise row-rule-inset-junction kann verwendet werden, um sowohl den linken als auch den rechten Endpunkt von Zeilen-Regelsegmenten zu versetzen, die Verbindungsendpunkte sind. Das sind Endpunkte an Schnittstellen von Zwischenräumen, an denen sich Regelsegmente kreuzen.

Probieren Sie es aus

row-rule-inset-junction: 0;
row-rule-inset-junction: 10px;
row-rule-inset-junction: 0.5em -0.5em;
row-rule-inset-junction: overlap-join;
row-rule-inset-junction: overlap-join 10px;
<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>
  </div>
</section>
#example-element {
  display: grid;
  grid-template-columns: repeat(5, 1fr);
  rule: solid thick lightpink;
  row-rule-color: magenta;
  row-rule-break: intersection;
  gap: 1.5em;
  rule-overlap: row-over-column;
  border: 1px solid rebeccapurple;
  margin: auto;
  rule-visibility-items: around;
}
#example-element i {
  background-color: #efefef;
  padding: 1em;
}

Bestandteile

Diese Eigenschaft ist eine Kurzschreibweise für die folgenden CSS-Eigenschaften:

Syntax

css
/* Keywords */
row-rule-inset-junction: overlap-join;

/* <length-percentage> values */
row-rule-inset-junction: 0;
row-rule-inset-junction: 1em;
row-rule-inset-junction: -5px;
row-rule-inset-junction: -25%;

/* Two values */
row-rule-inset-junction: 0 1em;
row-rule-inset-junction: -5px -25%;
row-rule-inset-junction: overlap-join 10px;

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

Werte

Für diese Eigenschaft werden ein oder zwei Werte aus der folgenden Liste angegeben:

overlap-join

Gibt an, dass das Verbindungssegment über die Spaltenregel hinausreichen soll. Daraus ergibt sich die Hälfte des Werts von column-gap plus die Hälfte des verwendeten Werts von column-rule-width.

<length-percentage>

Gibt die Größe des Einzugs an. Prozentwerte beziehen sich auf den Verbindungsendpunkt, der durch den Wert von column-gap bestimmt wird.

Beschreibung

Mit der Kurzschreibweise row-rule-inset-junction können Sie die Eigenschaften row-rule-inset-junction-start und row-rule-inset-junction-end festlegen. Dadurch werden sowohl die Anfangs- als auch die Endkante von Verbindungssegment-Endpunkten am linken und rechten Ende von Zeilen-Regelsegmenten nach innen oder außen versetzt. Bei Sprachen mit Schreibrichtung von rechts nach links ist die Reihenfolge umgekehrt.

Wenn ein Wert angegeben wird, werden beide Eigenschaften auf diesen Wert gesetzt. Werden zwei Werte angegeben, erhält -start den ersten und -end den zweiten Wert. Positive Werte verkürzen das Segment durch einen Einzug nach innen; negative Werte und das Schlüsselwort overlap-join verlängern es durch einen Versatz nach außen. Der Standardwert ist 0.

Die Eigenschaft row-rule-inset-junction ist Bestandteil mehrerer Kurzschreibweisen:

  • Um die Verbindungsendpunkte von Zeilen- und Spaltensegmenten nach innen zu versetzen, können Sie row-rule-inset-junction zusammen mit der Kurzschreibweise column-rule-inset-junction über die Kurzschreibweise rule-inset-junction festlegen.

  • Um sowohl die äußeren Endpunkte als auch die Verbindungsendpunkte von Zeilensegmenten nach innen zu versetzen, können Sie row-rule-inset-junction zusammen mit der Kurzschreibweise row-rule-inset-cap über die Kurzschreibweise row-rule-inset festlegen.

Alle Segmentendpunkte, einschließlich der -cap- und -column-Entsprechungen dieser Eigenschaft, können mit der Kurzschreibweise rule-inset festgelegt werden.

Formale Definition

Wert in der Datenbank nicht gefunden!

Formale Syntax

row-rule-inset-junction = 
<inset-value> <inset-value>?

<inset-value> =
<length-percentage> |
overlap-join

<length-percentage> =
<length> |
<percentage>

Beispiele

Grundlegende Verwendung

Dieses Beispiel zeigt, wie Sie mit row-rule-inset-junction die Kanten von Verbindungssegmenten in Flex-Containern nach innen versetzen.

HTML

Das Markup enthält zwei <div>-Elemente mit jeweils sieben Kindelementen. Der einzige Unterschied zwischen den beiden Containern besteht darin, dass der zweite zusätzlich die Klasse column hat.

html
<h1>Insetting junction row rule endpoints</h1>
<article>
  <section>
    <h2>flex-direction: row</h2>
    <div class="flexbox">
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
    </div>
  </section>
  <section>
    <h2>flex-direction: column</h2>
    <div class="flexbox column">
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
      <div></div>
    </div>
  </section>
</article>

CSS

Mit der Eigenschaft display machen wir die .flexbox-Elemente zu Flex-Containern. Mithilfe von flex-wrap und flex-line-count verteilen wir die Elemente auf drei Flex-Zeilen. Wir definieren eine hellblaue rule für die Zwischenräume zwischen Spalten und Zeilen. Anschließend überschreiben wir row-rule-color, sodass die Dekorationen der Zeilenzwischenräume ein dunkleres blue erhalten. Außerdem setzen wir rule-overlap auf row-over-column, damit bei einer Überlappung die Zeilensegmente über den Spaltensegmenten gezeichnet werden. Schließlich setzen wir row-rule-inset-junction auf 16px, sodass Anfang und Ende denselben Wert erhalten.

css
.flexbox {
  display: flex;
  flex-wrap: balance;
  flex-line-count: 3;
  gap: 20px;
  rule: 5px solid lightblue;
  row-rule-color: blue;
  rule-overlap: row-over-column;

  row-rule-inset-junction: 16px;
}

Für den Container .column setzen wir außerdem flex-direction auf column. Dadurch verläuft die Hauptachse des Flex-Containers vertikal über die Seite, und die Elemente werden in Spalten statt in Zeilen angeordnet.

css
.column {
  flex-direction: column;
}

Der übrige CSS-Code ist der Kürze halber ausgeblendet.

Ergebnis

Ändern Sie die Größe des Einzugs. Beachten Sie, dass diese Eigenschaft nur Zeilenregeln beeinflusst, die in mehrere Segmente unterteilt sind. Besteht eine Zeilenregel aus einem einzigen Segment, das sich über den Container erstreckt, hat dieses Segment zwei äußere Endpunkte und keine Verbindungsendpunkte. Änderungen am Wert von row-rule-inset-junction wirken sich dann nicht darauf aus.

Mit Grid-Layout

Dieses Beispiel zeigt, wie Sie mit row-rule-inset-junction den Anfangs- und den Endpunkt von Zeilen-Verbindungssegmenten in einem Grid-Container um unterschiedliche Werte nach innen versetzen.

HTML

Wir verwenden ein <ul>-Element als Container mit mehreren <li>-Kindelementen, die jeweils zu einem Grid-Element werden.

html
<ul id="ul">
  <li>1</li>
  <li>2</li>
  <li>3</li>
  <li>4</li>
  <li>5</li>
  <li>6</li>
  <li>7</li>
  <li>8</li>
  <li>9</li>
  <li>10</li>
  <li>11</li>
  <li>12</li>
  <li>13</li>
  <li>15</li>
  <li>16</li>
  <li>17</li>
  <li>18</li>
  <li>19</li>
  <li>20</li>
  <li>21</li>
  <li>22</li>
  <li>23</li>
</ul>

CSS

Wir machen das <ul> zu einem Grid-Container, indem wir die Eigenschaft display auf grid setzen. Die Eigenschaft grid-template-columns legt fest, dass das Grid sechs Spalten hat. Mit list-style-type entfernen wir die Aufzählungszeichen und setzen die Zeilen- und Spaltenabstände über die Kurzschreibweise gap auf 20px. Farbe, Breite und Linienstil aller Regeln legen wir mit der Kurzschreibweise rule fest. Anschließend ändern wir mit der Eigenschaft column-rule-color nur die Farbe der Spaltenregeln.

Mit der Eigenschaft row-rule-break unterbrechen wir die Zeilenregeln an jeder Kreuzung. Ohne diese Unterbrechungen gäbe es keine Zeilen-Verbindungssegmente, die wir gestalten könnten!

Schließlich legen wir mit der Eigenschaft row-rule-inset-junction fest, dass der Anfang jeder Zeilenverbindung um 16px nach innen versetzt wird, während ihr Ende keinen Einzug erhält.

Außerdem legen wir fest, dass sich das sechste Grid-Element über drei Spalten erstreckt.

css
ul {
  display: grid;
  grid-template-columns: repeat(6, auto);
  list-style-type: "";
  gap: 20px;
  rule: 10px solid olive;
  column-rule-color: palegoldenrod;
  row-rule-break: intersection;

  row-rule-inset-junction: 16px 0;
}

li:nth-of-type(8) {
  grid-column-end: span 3;
}

Der übrige CSS-Code ist der Kürze halber ausgeblendet.

Ergebnis

Spezifikationen

Spezifikation
CSS Gaps Module Level 1
# propdef-row-rule-inset-junction

Browser-Kompatibilität

Siehe auch