Dieser Inhalt wurde automatisch aus dem Englischen übersetzt, und kann Fehler enthalten. Erfahre mehr über dieses Experiment.

View in English Always switch to English

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, bei denen es sich um junction endpoints handelt. Das sind 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;
  padding: 1em;
}

Syntax

css
/* 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

Gibt an, dass sich das junction-Segment über die row-rule erstrecken soll. Der Wert entspricht der Hälfte von row-gap zuzüglich der Hälfte des verwendeten Werts von row-rule-width.

<length-percentage>

Gibt die Größe des Versatzes an. Prozentwerte beziehen sich auf den junction endpoint, also den Wert von row-gap.

Beschreibung

Mit der Eigenschaft column-rule-inset-junction-end können junction segment endpoints 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 column-gap als eines oder mehrere Segmente dargestellt. Solche Segmente treten zwischen folgenden Elementen auf:

  • 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 column-rule mehrere Zeilen überspannt 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 junction endpoint tritt am unteren Ende jedes column-Segments auf, dessen unteres Ende an einer Schnittstelle von Abständen liegt, an der weitere column- oder rule-Segmente vorhanden sind.

Die Eigenschaft column-rule-inset-junction-end ist Bestandteil mehrerer Kurzschreibweisen:

  • Um die oberen und unteren junction endpoints von column-Segmenten nach innen zu versetzen, können column-rule-inset-junction-end und die Eigenschaft column-rule-inset-junction-start über die Kurzschreibweise column-rule-inset-junction festgelegt werden.

  • Um alle unteren Endpunkte von column-Segmenten nach innen zu versetzen, können column-rule-inset-junction-end und die Eigenschaft column-rule-inset-cap-end über die Kurzschreibweise column-rule-inset-end festgelegt werden.

  • Um die unteren junction endpoints von column-Segmenten und die rechten junction endpoints von row-Segmenten nach innen zu versetzen, können column-rule-inset-junction-end und die Eigenschaft row-rule-inset-junction-end über die Kurzschreibweise rule-inset-junction-end festgelegt werden.

Alle Segmentendpunkte, einschließlich der -start-, -cap- und row--Entsprechungen dieser Eigenschaft, können über die Kurzschreibweise rule-inset festgelegt werden.

Junction endpoints verstehen

Ein junction segment endpoint ist ein Segmentendpunkt an einem inneren Abstand, der an einer Schnittstelle von Abständen endet, an der weitere rule- oder column-Segmente vorhanden sind. Die Eigenschaft column-rule-inset-junction-end steuert den Versatz der unteren Kante von column-junction-Segmenten, sodass diese 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 junction-Segments. Prozentwerte beziehen sich auf die Größe von row-gap. Mit -50% wird das untere Ende des junction-Segments bis zur Mitte des darunterliegenden row-gap verlängert, unabhängig von dessen Breite.

In der folgenden Demonstration enden die column-rule-Segmente in den oberen beiden Zeilen an junction endpoints. Mit column-rule-inset-junction-end: 16px werden die unteren Enden dieser Segmente um 16px nach innen versetzt. Ändern Sie den <length>-Wert des Versatzes, um besser zu erkennen, welche Segmente an junction segment endpoints enden.

Wenn Sie 0px als Wert festlegen, schließen die Enden der column rules mit dem Ende der jeweiligen Zeile ab und grenzen an den row-gap. Dies ist der Standardwert. 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 unteren Zeile bleiben unverändert: Ihre Endpunkte sind cap endpoints 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 dargestellt, wenn mindestens einer der beiden angrenzenden Bereiche ein Element enthält. Die column-rule-Segmente mit doppeltem Linienstil, die bei rule-visibility-items: around erscheinen, enden an einer inneren Schnittstelle, an der mindestens ein row-rule-Segment vorhanden ist. Ihre Endpunkte sind daher junction segment endpoints.

Wählen Sie between als Wert für rule-visibility-items. Damit werden rules in Abstandssegmenten nur dargestellt, wenn beide angrenzenden Bereiche Elemente enthalten. Die column-rule-Segmente mit doppeltem Linienstil enden nun an einer inneren Schnittstelle, an der keine weiteren rule-Segmente vorhanden sind. Ihre Endpunkte sind daher cap segment endpoints 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 so, dass es mit der Unterkante der gekreuzten row-rule abschließt. Der Wert entspricht der Hälfte der Größe von row-gap (wodurch das Segment bis zur Mitte des Abstands reichen würde) zuzüglich der Hälfte der Breite der row-rule.

Wenn column-rule-inset-junction-end auf das Schlüsselwort overlap-join gesetzt ist, reichen die unteren Enden der junction-Segmente in den row-gap hinein, bis sie auf die Unterkante der dort dargestellten row-rule treffen beziehungsweise sich mit ihr verbinden.

Im folgenden interaktiven Beispiel ist column-rule-inset-junction-end auf overlap-join gesetzt:

Ändern Sie die Größe von row-rule-width und row-gap. Beachten Sie, dass das untere Ende des column-Segments unabhängig von der Größe des Abstands oder der row-rule immer so weit verlängert wird, dass es mit der Unterkante der im Abstand dargestellten 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 Endkante von junction-Segmenten in Flex-Containern nach innen versetzen.

HTML

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

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 Zeilen- und Spaltenabstände und überschreiben anschließend column-rule-color, um die Spaltenabstände mit dem dunkleren blue zu gestalten. Außerdem setzen wir die Eigenschaft rule-overlap auf column-over-row, damit die column-Segmente über den row-Segmenten gezeichnet werden, wenn sie sich überlappen. Schließlich setzen wir column-rule-inset-junction-end auf 16px.

css
.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 ü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 Versatzes. Beachten Sie, dass die column-rule im rechten Beispiel aus einem einzigen Segment besteht, das von oben nach unten verläuft. Dieses Segment hat zwei cap endpoints und keine junction endpoints. Eine Änderung des Werts von column-rule-inset-junction-end wirkt sich daher nicht auf dieses Beispiel aus.

Spezifikationen

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

Browser-Kompatibilität

Siehe auch