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 column-rule-Segmenten versetzt werden, wenn es sich dabei um Verbindungspunkte handelt, also um Endpunkte an Schnittstellen von Abständen, an denen sich rule-Segmente kreuzen.
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;
color: #333333;
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
Für diese Eigenschaft wird ein einzelner Wert aus der folgenden Liste angegeben:
overlap-join-
Legt fest, dass sich das Segment an der Schnittstelle über die row-rule erstrecken soll. Der Wert entspricht der Hälfte von
row-gapplus der Hälfte des verwendeten Werts vonrow-rule-width. <length-percentage>-
Legt die Größe des Versatzes fest. Prozentwerte beziehen sich auf den Endpunkt an der Schnittstelle, dessen Bezugsgröße der Wert von
row-gapist.
Beschreibung
Mit der Eigenschaft column-rule-inset-junction-end können Segmentendpunkte an Schnittstellen am unteren Ende von column-rule-Segmenten 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.
Column-rules werden innerhalb eines Spaltenabstands als ein oder mehrere Segmente gezeichnet. Diese Segmente liegen 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 sich eine column-rule über mehrere Zeilen erstreckt oder in mehrere Segmente unterteilt wird, legt die Eigenschaft column-rule-break fest. Innere Unterbrechungen zwischen column-rule-Segmenten haben die Größe von row-gap. Ein Endpunkt an einer Schnittstelle befindet sich am unteren Ende jedes Spaltensegments, dessen unteres Ende an einer Schnittstelle von Abständen liegt, an der weitere Spalten- oder rule-Segmente vorhanden sind.
Die Eigenschaft column-rule-inset-junction-end ist Bestandteil mehrerer Kurzschreibweisen:
-
Um die oberen und unteren Endpunkte von Spaltensegmenten an Schnittstellen nach innen zu versetzen, können die Eigenschaften
column-rule-inset-junction-endundcolumn-rule-inset-junction-startmit der Kurzschreibweisecolumn-rule-inset-junctionfestgelegt werden. -
Um alle unteren Endpunkte von Spaltensegmenten nach innen zu versetzen, können die Eigenschaften
column-rule-inset-junction-endundcolumn-rule-inset-cap-endmit der Kurzschreibweisecolumn-rule-inset-endfestgelegt werden. -
Um die oberen, unteren, linken und rechten Segmentendpunkte an Schnittstellen nach innen zu versetzen, können die Kurzschreibweisen
column-rule-inset-junctionundrow-rule-inset-junctionmit der Kurzschreibweiserule-inset-junctionfestgelegt werden.
Alle Segmentendpunkte, einschließlich der Entsprechungen dieser Eigenschaft mit -start, -cap und row-, können mit der Kurzschreibweise rule-inset festgelegt werden.
Endpunkte an Schnittstellen verstehen
Ein Segmentendpunkt an einer Schnittstelle ist ein Segmentendpunkt an einem inneren Abstand, der an einer Schnittstelle von Abständen endet, an der weitere rule- oder Spaltensegmente vorhanden sind. Die Eigenschaft column-rule-inset-junction-end steuert den Versatz der unteren Kante von Spaltensegmenten an Schnittstellen. Dadurch können die Segmente verkürzt oder verlängert werden.
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 Schnittstelle. Prozentwerte beziehen sich auf die Größe von row-gap. Mit -50% wird das untere Ende des Segments an der Schnittstelle bis zur Mitte des darunterliegenden Zeilenabstands verlängert, unabhängig davon, wie breit dieser Abstand ist.
In der folgenden Demonstration enden die column-rule-Segmente in den oberen beiden Zeilen an Schnittstellen. 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 Schnittstellen enden.
Wenn Sie 0px als Wert festlegen, schließen die Enden der column-rules bündig mit den Zeilenenden ab und grenzen an den Zeilenabstand. 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 ändern sich nicht: Ihre Enden sind Abschlussendpunkte 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 rules in einem Abstandssegment gezeichnet, wenn ein Element mindestens einen der beiden angrenzenden Bereiche belegt. Die column-rule-Segmente mit doppeltem Linienstil, die bei rule-visibility-items: around erscheinen, enden an einer inneren Schnittstelle, an der ein oder mehrere row-rule-Segmente vorhanden sind. Diese Spaltensegmente haben Endpunkte an Schnittstellen.
Wählen Sie between als Wert für rule-visibility-items. Bei diesem Wert werden rules in Abstandssegmenten nur gezeichnet, wenn Elemente beide angrenzenden Bereiche belegen. Die column-rule-Segmente mit doppeltem Linienstil enden nun an einer inneren Schnittstelle, an der keine weiteren rule-Segmente vorhanden sind. Ihre Enden sind daher Abschlussendpunkte und werden von der Eigenschaft column-rule-inset-junction-end nicht beeinflusst.
Der Wert overlap-join
Der Wert overlap-join verlängert das untere Ende innerer Segmente, sodass es mit der unteren Kante der kreuzenden row-rule abschließt. Der Wert entspricht der Hälfte der Größe von row-gap (wodurch das Segment bis zur Mitte des Abstands reicht) plus der Hälfte der Breite der row-rule.
Wenn column-rule-inset-junction-end auf das Schlüsselwort overlap-join gesetzt ist, reichen die Segmentenden an Schnittstellen in den Zeilenabstand hinein, bis sie die untere Kante der dort gezeichneten row-rule erreichen 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 Abstands oder der row-rule stets so weit verlängert wird, dass es mit der unteren Kante der im Abstand gezeichneten row-rule 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 Sie mit column-rule-inset-junction-end die Endkanten von Spaltensegmenten an Schnittstellen 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 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, die sowohl in Zeilen- als auch in Spaltenabständen gezeichnet wird. Anschließend überschreiben wir column-rule-color, um die Spaltenabstände mit einem dunkleren blue zu gestalten. 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;
}
Außerdem setzen wir flex-direction für den Container .column auf column. Dadurch verläuft die Hauptachse des Flex-Containers vertikal, und die Elemente werden in Spalten statt in Zeilen angeordnet.
.column {
flex-direction: column;
}
Das übrige CSS ist der Kürze halber ausgeblendet.
Ergebnis
Ändern Sie die Größe des Versatzes. Beachten Sie, dass diese Eigenschaft nur column-rules beeinflusst, die in mehrere Segmente unterteilt sind. Besteht eine column-rule aus einem einzigen Segment, das sich über die Höhe des Containers erstreckt, hat dieses Segment zwei Abschlussendpunkte und keine Endpunkte an Schnittstellen. Änderungen am Wert von column-rule-inset-junction-end wirken sich dann nicht darauf aus.
Spezifikationen
| Spezifikation |
|---|
| CSS Gaps Module Level 1> # propdef-column-rule-inset-junction-end> |
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