<line-style>
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.
Der enumerierte Wertetyp <line-style>
repräsentiert Schlüsselwortwerte, die den Stil einer Linie oder das Fehlen einer Linie definieren. Die <line-style>
-Schlüsselwortwerte werden in den folgenden Lang- und Kurzform-border und column Eigenschaften verwendet:
border
,border-style
border-block
,border-block-style
border-block-end
,border-block-end-style
border-block-start
,border-block-start-style
border-bottom
,border-bottom-style
border-inline
,border-inline-style
border-inline-end
,border-inline-end-style
border-inline-start
,border-inline-start-style
border-left
,border-left-style
border-right
,border-right-style
border-top
,border-top-style
column-rule
,column-rule-style
Syntax
Werte
Der enumerierte <line-style>
-Typ wird mit einem der unten aufgeführten Werte angegeben:
none
-
Zeigt keine Linie an. Der berechnete Wert der Linienbreite ist
0
, selbst wenn ein Breitenwert angegeben ist. Bei Zellen- und Rahmenzusammenführung hat dernone
-Wert die niedrigste Priorität. Wenn ein anderer, widersprüchlicher Rahmen festgelegt ist, wird er angezeigt. Dernone
-Wert ist ähnlich wiehidden
. -
Zeigt keine Linie an. Die berechnete Breite der Linie ist
0
, selbst wenn ein Breitenwert angegeben ist. Bei Zellen- und Rahmenzusammenführung hat derhidden
-Wert die höchste Priorität. Wenn ein anderer, widersprüchlicher Rahmen festgelegt ist, wird er nicht angezeigt. Derhidden
-Wert ist ähnlich wienone
, aberhidden
ist kein gültiger Wert für Umrissstile. dotted
-
Zeigt eine Reihe von runden Punkten. Der Radius der Punkte ist die Hälfte des berechneten Wertes der Linienbreite. Der Abstand der Punkte wird nicht durch die Spezifikation definiert und ist implementierungsspezifisch.
dashed
-
Zeigt eine Reihe von kurzen, quadratisch abgeschlossenen Strichen oder Liniensegmenten. Die genaue Größe und Länge der Segmente sind nicht durch die Spezifikation definiert und sind implementierungsspezifisch.
solid
-
Zeigt eine einzelne, gerade, durchgehende Linie.
double
-
Zeigt zwei gerade Linien mit etwas Abstand dazwischen. Die Länge der Linien summiert sich zur Pixelgröße, die durch die Linienbreite definiert ist.
groove
-
Zeigt einen Rahmen mit geschnitztem Aussehen. Dieser Wert ist das Gegenteil von
ridge
. ridge
-
Zeigt einen Rahmen mit einem erhabenen Aussehen. Dieser Wert ist das Gegenteil von
groove
. inset
-
Zeigt einen Rahmen an, der das Element eingebettet wirken lässt. Dieser Wert ist das Gegenteil von
outset
. Wenn er auf eine Tabellenzellenumrandung angewendet wird undborder-collapse
aufcollapsed
gesetzt ist, verhält sich dieser Wert wiegroove
. outset
-
Zeigt einen Rahmen an, der das Element erhaben erscheinen lässt. Dieser Wert ist das Gegenteil von
inset
. Wenn er auf eine Tabellenzelle mitborder-collapse
gesetzt wird, verhält sich dieser Wert wieridge
.
Hinweis:
Wenn <outline-style>
als Wertetyp für die Eigenschaften outline
und outline-style
verwendet wird, ist es ähnlich wie <line-style>
, unterstützt jedoch nicht hidden
und enthält den Wert auto
. Wenn auto
festgelegt ist, wird der vom Benutzeragent festgelegte <line-style>
-Wert verwendet.
Formale Syntax
Beispiele
Das erste Beispiel demonstriert alle <line-style>
-Schlüsselwortwerte. Das zweite Beispiel zeigt, wie einige Linienstilfarben auf unerwartete Weise angezeigt werden können.
Linienstile definieren
Dieses Beispiel zeigt alle <line-style>
-Werte als Werte für die CSS-Eigenschaften border-style
und column-rule-style
.
HTML
Dieses Beispiel verwendet mehrere <div>
-Elemente, von denen jedes eine Klasse hat, die den <line-style>
-Wert repräsentiert, der demonstriert wird.
<div class="{line-style}">
<p>{line-style}</p>
<p>a b c d e f g h i j k l m n o p q r s t u v w x y z</p>
</div>
CSS
Im CSS für dieses Beispiel ist für alle <p>
-Elemente eine Rahmenbreite von 7px
und der Stilwert double
definiert. Für jeden Absatz wird der double
-Wert dann überschrieben, indem ein anderer <line-style>
-Wert für die Eigenschaften border-style
und column-rule-style
angegeben wird.
p {
padding: 5px;
border: double 7px #bada55;
}
p + p {
columns: 3;
column-gap: 20px;
column-rule: double 7px;
border-color: black;
}
.none p {
border-style: none;
column-rule-style: none;
}
.hidden p {
border-style: hidden;
column-rule-style: hidden;
}
.dotted p {
border-style: dotted;
column-rule-style: dotted;
}
.dashed p {
border-style: dashed;
column-rule-style: dashed;
}
.solid p {
border-style: solid;
column-rule-style: solid;
}
.double p {
border-style: double;
column-rule-style: double;
}
.groove p {
border-style: groove;
column-rule-style: groove;
}
.ridge p {
border-style: ridge;
column-rule-style: ridge;
}
.inset p {
border-style: inset;
column-rule-style: inset;
}
.outset p {
border-style: outset;
column-rule-style: outset;
}
Ergebnis
Beachten Sie, dass der schwarze Rahmen nicht immer schwarz ist.
Linienstile und Farben definieren
Dieses Beispiel demonstriert die Wahl von Linienstil und Farbe. Bei einigen <line-style>
-Schlüsselwortwerten ist die Farbe der Linie möglicherweise nicht das, was Sie erwarten. Um den erforderlichen "3D"-Effekt der Stile groove
, ridge
, inset
und outset
zu erzeugen, verwenden Benutzeragenten bei der Darstellung dieser Werte in Schwarz oder Weiß andere Farbberechnungen als bei allen anderen Farblinienkombinationen.
CSS
Die vier Seiten jedes <div>
haben einen unterschiedlichen <line-style>
-Wert und jedes Listenelement hat einen anderen <color>
-Wert. Wir verwenden generierten Inhalt, um die CSS inline anzuzeigen.
div {
border-width: 10px;
border-style: inset groove ridge outset;
padding: 5px;
}
JavaScript
Das JavaScript erstellt dynamisch <div>
-Elemente, von denen jedes eine andere border-color
gesetzt hat.
// prettier-ignore
const colors = [
"#000000", "#000001", "#ffffff",
"#ff00ff", "#ffff00", "#00ffff",
"#cc33cc", "#cccc33", "#33cccc",
"#ff0000", "#00ff00", "#0000ff",
"#cc3333", "#33cc33", "#3333cc",
"#993333", "#339933", "#333399",
];
for (const c of colors) {
const div = document.createElement("div");
div.style.borderColor = c;
div.textContent = c;
document.body.appendChild(div);
}
Ergebnis
Beachten Sie, dass die fast schwarze Farbe #000001
sich vom tatsächlichen Schwarz unterscheiden kann und der Kontrast zwischen den dunklen und hellen Kanten bei Verwendung heller Farben deutlicher ist.
Spezifikationen
Specification |
---|
CSS Backgrounds and Borders Module Level 3 # typedef-line-style |