column-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 column-rule-inset-junction kann verwendet werden, um sowohl den oberen als auch den unteren Endpunkt von column-rule-Segmenten zu versetzen, die Verbindungsendpunkte sind. Das sind Endpunkte an Lückenverbindungen, an denen sich rule-Segmente schneiden.
Probieren Sie es aus
column-rule-inset-junction: 0;
column-rule-inset-junction: 10px;
column-rule-inset-junction: 0.5em -0.5em;
column-rule-inset-junction: overlap-join;
column-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;
column-rule-color: magenta;
column-rule-break: intersection;
gap: 1.5em;
rule-overlap: column-over-row;
border: 1px solid rebeccapurple;
margin: auto;
rule-visibility-items: around;
}
#example-element i {
background-color: #efefef;
padding: 1em;
}
Zugehörige Eigenschaften
Diese Eigenschaft ist eine Kurzschreibweise für die folgenden CSS-Eigenschaften:
Syntax
/* Keywords */
column-rule-inset-junction: overlap-join;
/* <length-percentage> values */
column-rule-inset-junction: 0;
column-rule-inset-junction: 1em;
column-rule-inset-junction: -5px;
column-rule-inset-junction: -25%;
/* Two values */
column-rule-inset-junction: 0 1em;
column-rule-inset-junction: -5px -25%;
column-rule-inset-junction: overlap-join 10px;
/* Global values */
column-rule-inset-junction: inherit;
column-rule-inset-junction: initial;
column-rule-inset-junction: revert;
column-rule-inset-junction: revert-layer;
column-rule-inset-junction: unset;
Werte
Für diese Eigenschaft werden ein oder zwei Werte aus der folgenden Liste angegeben:
overlap-join-
Legt fest, dass sich das Verbindungssegment über die row-rule erstrecken soll. Der Wert ergibt sich aus der Hälfte des Werts von
row-gapzuzüglich der Hälfte des verwendeten Werts vonrow-rule-width. <length-percentage>-
Gibt die Größe des Versatzes an. Prozentwerte beziehen sich auf den Verbindungsendpunkt, der durch den Wert von
row-gapbestimmt wird.
Beschreibung
Mit der Kurzschreibweise column-rule-inset-junction können die Eigenschaften column-rule-inset-junction-start und column-rule-inset-junction-end festgelegt werden. Dadurch werden sowohl der obere als auch der untere Endpunkt von column-rule-Segmenten, die Verbindungssegmente sind, nach innen oder außen versetzt.
Wird ein Wert angegeben, 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, indem sie seine Endpunkte nach innen versetzen; negative Werte und das Schlüsselwort overlap-join verlängern es, indem sie die Endpunkte nach außen versetzen. Der Standardwert ist 0.
Die Eigenschaft column-rule-inset-junction ist Bestandteil mehrerer Kurzschreibweisen:
-
Um die Verbindungsendpunkte sowohl von column- als auch von row-Segmenten nach innen zu versetzen, können die Kurzschreibweisen
column-rule-inset-junctionundrow-rule-inset-junctiongemeinsam über die Kurzschreibweiserule-inset-junctionfestgelegt werden. -
Um sowohl die Kappen- als auch die Verbindungsendpunkte von column-Segmenten nach innen zu versetzen, können die Kurzschreibweisen
column-rule-inset-junctionundcolumn-rule-inset-capgemeinsam über die Kurzschreibweisecolumn-rule-insetfestgelegt werden.
Alle Segmentendpunkte, einschließlich der -cap- und -row-Entsprechungen dieser Eigenschaft, können mit der Kurzschreibweise rule-inset festgelegt werden.
Formale Definition
Wert in der Datenbank nicht gefunden!Formale Syntax
column-rule-inset-junction =
<inset-value> <inset-value>?
<inset-value> =
<length-percentage> |
overlap-join
<length-percentage> =
<length> |
<percentage>
Beispiele
>Grundlegende Verwendung
Dieses Beispiel zeigt, wie column-rule-inset-junction verwendet wird, um die Endpunkte von Verbindungssegmenten in Flex-Containern nach innen zu 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 besitzt.
<h1>Insetting junction column 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, um sowohl Zeilen- als auch Spaltenlücken zu gestalten, und überschreiben anschließend column-rule-color, sodass die Spaltenlücken mit einem dunkleren blue gestaltet werden. Außerdem setzen wir die Eigenschaft rule-overlap auf column-over-row. Dadurch werden die column-Segmente über den row-Segmenten gezeichnet, wenn sie sich überlappen. Schließlich setzen wir column-rule-inset-junction auf 16px.
.flexbox {
display: flex;
flex-wrap: balance;
flex-line-count: 3;
gap: 20px;
rule: 5px solid lightblue;
column-rule-color: blue;
rule-overlap: column-over-row;
column-rule-inset-junction: 16px;
}
Für den .column-Container 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 Versatzes. Beachten Sie, dass im rechten Beispiel die column-rule aus einem einzigen Segment besteht, das von oben nach unten verläuft. Dieses Segment hat zwei Kappenendpunkte und keine Verbindungsendpunkte. Eine Änderung des Werts von column-rule-inset-junction wirkt sich daher nicht auf dieses Beispiel aus.
Mit Grid-Layout
Dieses Beispiel zeigt, wie mit der Eigenschaft column-rule-inset-junction der obere und der untere Verbindungsendpunkt von Segmenten in einem Grid-Container um unterschiedliche Werte nach innen versetzt werden.
HTML
Wir verwenden das Element <ul> 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>
</ul>
CSS
Wir machen das <ul>-Element 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 mit der Kurzschreibweise gap die Zeilen- und Spaltenabstände auf 20px. Farbe, Breite und Linienstil aller rules legen wir mit der Kurzschreibweise rule fest; anschließend ändern wir nur die Farbe der row-rule mit der Eigenschaft row-rule-color.
Mit der Eigenschaft column-rule-break unterbrechen wir die column-rules an jedem Schnittpunkt. Ohne diese Unterbrechungen gäbe es keine column-Verbindungssegmente, die gestaltet werden könnten!
Schließlich legen wir mit der Eigenschaft column-rule-inset-junction fest, dass der Anfang jeder column-Verbindung um 16px nach innen versetzt wird, während das Ende nicht versetzt wird.
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;
row-rule-color: palegoldenrod;
column-rule-break: intersection;
column-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-column-rule-inset-junction> |
Browser-Kompatibilität
Siehe auch
column-rule-inset-junction-start- Kurzschreibweise
column-rule-inset-junction - Kurzschreibweise
column-rule-inset - Kurzschreibweise
rule-inset column-rule-break- Kurzschreibweise
rule-break rule-overlaprule-visibility-items- Kurzschreibweise
rule - Modul CSS gaps