column-rule-inset-junction-end 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.
Mit der CSS-Eigenschaft column-rule-inset-junction-end können die unteren Endpunkte von Spaltentrennliniensegmenten versetzt werden, wenn es sich dabei um Kreuzungsendpunkte handelt, also um Endpunkte an Schnittstellen von Zwischenräumen, an denen sich Trennliniensegmente schneiden.
Probieren Sie es aus
column-rule-inset-junction-end: 0;
column-rule-inset-junction-end: 0.5em;
column-rule-inset-junction-end: 10px;
column-rule-inset-junction-end: -100%;
column-rule-inset-junction-end: overlap-join;
<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;
}
Syntax
/* Keywords */
column-rule-inset-junction-end: overlap-join;
/* <length-percentage> values */
column-rule-inset-junction-end: 0;
column-rule-inset-junction-end: 1em;
column-rule-inset-junction-end: -5px;
column-rule-inset-junction-end: -25%;
/* Global values */
column-rule-inset-junction-end: inherit;
column-rule-inset-junction-end: initial;
column-rule-inset-junction-end: revert;
column-rule-inset-junction-end: revert-layer;
column-rule-inset-junction-end: unset;
Werte
Diese Eigenschaft wird durch einen einzelnen Wert aus der folgenden Liste angegeben:
overlap-join-
Gibt an, dass das Segment an der Kreuzung über die Zeilentrennlinie hinausreichen soll. Der Wert entspricht der Hälfte des
row-gap-Werts zuzüglich der Hälfte des verwendetenrow-rule-width-Werts. <length-percentage>-
Gibt die Größe des Einzugs an. Prozentwerte beziehen sich auf den Kreuzungsendpunkt, also auf den
row-gap-Wert.
Beschreibung
Mit der Eigenschaft column-rule-inset-junction-end können Endpunkte von Segmenten an Kreuzungen am unteren Ende von Spaltentrennliniensegmenten nach innen oder außen versetzt werden. Der Standardwert ist 0. Positive Werte verkürzen das Segment, während negative Werte und das Schlüsselwort overlap-join es verlängern.
Spaltentrennlinien werden innerhalb eines Spaltenzwischenraums als ein oder mehrere Segmente dargestellt. Solche Segmente befinden sich zwischen:
- Benachbarten Spalten in CSS-Grid-Layouts.
- Benachbarten Flex-Elementen oder Flex-Zeilen in Flex-Layouts, abhängig von
flex-direction. - Benachbarten Spalten in mehrspaltigen Layouts.
Ob eine Spaltentrennlinie mehrere Zeilen überspannt oder in mehrere Segmente unterteilt wird, bestimmt die Eigenschaft column-rule-break. Innere Unterbrechungen zwischen Spaltentrennliniensegmenten haben die Größe von row-gap. Ein Kreuzungsendpunkt liegt am unteren Ende jedes Spaltensegments vor, dessen unteres Ende an einer Schnittstelle von Zwischenräumen liegt, an der weitere Spalten- oder Trennliniensegmente vorhanden sind.
Die Eigenschaft column-rule-inset-junction-end ist Bestandteil mehrerer Kurzschreibweisen:
-
Um die oberen und unteren Kreuzungsendpunkte von Spaltensegmenten nach innen zu versetzen, können
column-rule-inset-junction-endund die Eigenschaftcolumn-rule-inset-junction-startmit der Kurzschreibweisecolumn-rule-inset-junctionfestgelegt werden. -
Um alle unteren Endpunkte von Spaltensegmenten nach innen zu versetzen, können
column-rule-inset-junction-endund die Eigenschaftcolumn-rule-inset-cap-endmit der Kurzschreibweisecolumn-rule-inset-endfestgelegt werden. -
Um die unteren Kreuzungsendpunkte von Spaltensegmenten und die rechten Kreuzungsendpunkte von Zeilensegmenten nach innen zu versetzen, können
column-rule-inset-junction-endund die Eigenschaftrow-rule-inset-junction-endmit der Kurzschreibweiserule-inset-junction-endfestgelegt werden.
Alle Segmentendpunkte, einschließlich der -start-, -cap- und row--Entsprechungen dieser Eigenschaft, können mit der Kurzschreibweise rule-inset festgelegt werden.
Kreuzungsendpunkte verstehen
Ein Kreuzungsendpunkt eines Segments ist ein Segmentendpunkt an einem inneren Zwischenraum, der an einer Schnittstelle von Zwischenräumen endet, an der weitere Trennlinien- oder Spaltensegmente vorhanden sind. Die Eigenschaft column-rule-inset-junction-end steuert den Versatz der unteren Kante von Spaltensegmenten an Kreuzungen, sodass die Segmente verkürzt oder verlängert werden können.
Längenwerte für column-rule-inset-junction-end versetzen Segmente um den angegebenen Wert nach innen. Negative Längenwerte bewirken einen Versatz nach außen und verlängern das untere Ende des Segments an der Kreuzung. Prozentwerte beziehen sich auf die Größe von row-gap. Mit -50% wird das untere Ende des Segments an der Kreuzung bis zur Mitte des darunterliegenden Zeilenzwischenraums verlängert, unabhängig davon, wie groß dieser ist.
In der folgenden Demonstration enden die Spaltentrennliniensegmente der oberen beiden Zeilen an Kreuzungsendpunkten. Bei column-rule-inset-junction-end: 16px werden die unteren Enden dieser Segmente um 16px nach innen versetzt. Ändern Sie den <length>-Wert für den Versatz, um besser zu erkennen, welche Segmente an Kreuzungsendpunkten enden.
Wenn Sie 0px als Wert festlegen, schließen die Enden der Spaltentrennlinien bündig mit dem Ende der Zeile ab und grenzen an den Zeilenzwischenraum. Dies ist die Standardeinstellung. Beachten Sie, dass sich bei einer Änderung des Eigenschaftswerts nur die unteren Enden der Segmente in der Mitte des Grids ändern. Die Segmente in der untersten Zeile bleiben unverändert: Ihre Endpunkte sind äußere Endpunkte und werden von der Eigenschaft column-rule-inset-junction-end nicht beeinflusst.
Wählen Sie around als Wert für rule-visibility-items. Bei diesem Wert werden Trennlinien in einem Zwischenraumsegment dargestellt, wenn ein Element mindestens einen der beiden angrenzenden Bereiche belegt. Die Spaltentrennliniensegmente im doppelten Linienstil, die bei rule-visibility-items: around erscheinen, enden an einer inneren Schnittstelle, an der ein oder mehrere Zeilentrennliniensegmente vorhanden sind. Ihre Endpunkte sind daher Kreuzungsendpunkte.
Wählen Sie between als Wert für rule-visibility-items. Dabei werden Trennlinien in Zwischenraumsegmenten nur dargestellt, wenn Elemente beide angrenzenden Bereiche belegen. Die Spaltentrennliniensegmente im doppelten Linienstil enden nun an einer inneren Schnittstelle, an der keine weiteren Trennliniensegmente vorhanden sind. Ihre Endpunkte sind daher äußere Segmentendpunkte und werden nicht von der Eigenschaft column-rule-inset-junction-end beeinflusst.
Der Wert overlap-join
Der Wert overlap-join versetzt das untere Ende innerer Segmente nach außen, sodass es mit der Unterkante der kreuzenden Zeilentrennlinie bündig abschließt. Der Wert entspricht der Hälfte der Größe von row-gap (wodurch das Segment bis zur Mitte des Zwischenraums reichen würde) zuzüglich der Hälfte der Breite der Zeilentrennlinie.
Wenn column-rule-inset-junction-end auf das Schlüsselwort overlap-join gesetzt wird, reichen die unteren Enden der Segmente an Kreuzungen in den Zeilenzwischenraum hinein, bis sie auf die Unterkante der dort dargestellten Zeilentrennlinie treffen und sich mit ihr verbinden.
Im folgenden interaktiven Beispiel ist column-rule-inset-junction-end auf overlap-join gesetzt:
Ändern Sie die Werte von row-rule-width und row-gap. Beachten Sie, dass das untere Ende des Spaltensegments unabhängig von der Größe des Zwischenraums oder der Breite der Zeilentrennlinie stets so weit verlängert wird, dass es mit der Unterkante der im Zwischenraum dargestellten Zeilentrennlinie bündig abschließt.
Formale Definition
Wert in der Datenbank nicht gefunden!Formale Syntax
column-rule-inset-junction-end =
<inset-value>
<inset-value> =
<length-percentage> |
overlap-join
<length-percentage> =
<length> |
<percentage>
Beispiele
>Grundlegende Verwendung
Dieses Beispiel zeigt, wie column-rule-inset-junction-end festgelegt wird, um die Endkante von Segmenten an Kreuzungen in Flex-Containern nach innen zu versetzen.
HTML
<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
Wir verwenden die Eigenschaft display, um die .flexbox-Elemente in Flex-Container umzuwandeln. Mit flex-wrap und flex-line-count verteilen wir die Elemente auf drei Flex-Zeilen. Wir definieren eine hellblaue rule, die sowohl in Zeilen- als auch in Spaltenzwischenräumen dargestellt wird, und überschreiben anschließend column-rule-color, um für die Spaltenzwischenräume eine dunklere blue-Darstellung festzulegen. Außerdem setzen wir die Eigenschaft rule-overlap auf column-over-row, damit Spaltensegmente bei Überlappungen über den Zeilensegmenten gezeichnet werden. Schließlich setzen wir column-rule-inset-junction-end 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-end: 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 Versatzes. Beachten Sie, dass die Spaltentrennlinie im rechten Beispiel aus einem einzigen Segment besteht, das von oben nach unten verläuft. Dieses Segment hat zwei äußere Endpunkte und keine Kreuzungsendpunkte. Daher wirkt sich eine Änderung des Werts von column-rule-inset-junction-end nicht auf dieses Beispiel aus.
Spezifikationen
| Spezifikation |
|---|
| CSS Gaps Module Level 1> # propdef-column-rule-inset-junction-end> |
Browser-Kompatibilität
Siehe auch
column-rule-inset-junction-startcolumn-rule-inset-junction-Kurzschreibweiserule-inset-junction-start-Kurzschreibweisecolumn-rule-inset-Kurzschreibweiserule-inset-Kurzschreibweisecolumn-rule-breakrule-break-Kurzschreibweiserule-overlaprule-visibility-itemsrule-Kurzschreibweise- Modul CSS gaps