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
/* 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-gapplus die Hälfte des verwendeten Werts voncolumn-rule-width. <length-percentage>-
Gibt die Größe des Einzugs an. Prozentwerte beziehen sich auf den Verbindungsendpunkt, der durch den Wert von
column-gapbestimmt 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-junctionzusammen mit der Kurzschreibweisecolumn-rule-inset-junctionüber die Kurzschreibweiserule-inset-junctionfestlegen. -
Um sowohl die äußeren Endpunkte als auch die Verbindungsendpunkte von Zeilensegmenten nach innen zu versetzen, können Sie
row-rule-inset-junctionzusammen mit der Kurzschreibweiserow-rule-inset-capüber die Kurzschreibweiserow-rule-insetfestlegen.
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.
<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.
.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.
.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.
<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.
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
- Kurzschreibweise
column-rule-inset-junction - Kurzschreibweise
row-rule-inset-cap - Kurzschreibweise
row-rule-inset - Kurzschreibweise
rule-inset row-rule-break- Kurzschreibweise
rule-break rule-overlaprule-visibility-items- Kurzschreibweise
rule - Modul CSS gaps