CSS-eigenschappen met betrekking tot de decoratie van het boxmodel
Dit artikel legt de CSS-eigenschappen uit die betrekking hebben op de decoratie van het boxmodel.
Je kunt leren hoe je eigenschappen zoals randen en schaduwen schrijft.
YouTube Video
HTML voor Voorbeeldweergave
css-decoration.html
1<!DOCTYPE html>
2<html lang="en">
3<head>
4 <meta charset="UTF-8">
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <title>CSS Properties Example</title>
7 <link rel="stylesheet" href="css-base.css">
8 <link rel="stylesheet" href="css-decoration.css">
9</head>
10<body>
11 <!-- Header -->
12 <header>
13 <h1>Box Decoration Related CSS Properties Example</h1>
14 </header>
15
16 <!-- Main content -->
17 <main>
18 <header>
19 <h2>Box Decoration</h2>
20 </header>
21 <article>
22 <h3>border</h3>
23 <section>
24 <header><h4>border: 3px solid #333</h4></header>
25 <section class="sample-view">
26 <div class="border-solid">Solid Border</div>
27 </section>
28 <header><h4>border: 3px dashed #666</h4></header>
29 <section class="sample-view">
30 <div class="border-dashed">Dashed Border</div>
31 </section>
32 <header><h4>border: 5px double #999</h4></header>
33 <section class="sample-view">
34 <div class="border-double">Double Border</div>
35 </section>
36 <header><h4>border: 2px solid #000; border-radius: 15px;</h4></header>
37 <section class="sample-view">
38 <div class="border-rounded">Rounded Border</div>
39 </section>
40 </section>
41 </article>
42
43 <article>
44 <h3>border-radius</h3>
45 <section>
46 <header><h4>border-radius: 20px</h4></header>
47 <section class="sample-view">
48 <div class="border-radius-all-rounded">All corners rounded</div>
49 </section>
50 <header><h4>border-top-left-radius: 20px</h4></header>
51 <section class="sample-view">
52 <div class="border-radius-top-left-rounded">Top-left rounded</div>
53 </section>
54 <header><h4>border-radius: 50px / 25px</h4></header>
55 <section class="sample-view">
56 <div class="border-radius-ellipse-corners">Ellipse corners</div>
57 </section>
58 </section>
59 </article>
60
61 <article>
62 <h3>outline</h3>
63 <section>
64 <h4>Outline Examples</h4>
65 <header><h4>outline: 2px solid red</h4></header>
66 <section class="sample-view">
67 <div class="outline-solid">Solid Red Outline</div>
68 </section>
69 <header><h4>outline: 3px dashed blue</h4></header>
70 <section class="sample-view">
71 <div class="outline-dashed">Dashed Blue Outline</div>
72 </section>
73 <header><h4>outline: 4px double green</h4></header>
74 <section class="sample-view">
75 <div class="outline-double">Double Green Outline</div>
76 </section>
77 <header><h4>outline: 2px solid purple; outline-offset: 10px;</h4></header>
78 <section class="sample-view">
79 <div class="outline-offset">Outline with Offset</div>
80 </section>
81 </section>
82 </article>
83
84 <article>
85 <h3>box-shadow</h3>
86 <section>
87 <h4>Box Shadow Examples</h4>
88 <header><h4>box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.5)</h4></header>
89 <section class="sample-view">
90 <div class="box-shadow-basic-shadow">Basic Shadow</div>
91 </section>
92 <header><h4>box-shadow: inset 5px 5px 10px rgba(0, 0, 0, 0.3)</h4></header>
93 <section class="sample-view">
94 <div class="box-shadow-inset-shadow">Inset Shadow</div>
95 </section>
96 <header><h4>box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5), -5px -5px 10px rgba(255, 0, 0, 0.5);</h4></header>
97 <section class="sample-view">
98 <div class="box-shadow-multiple-shadow">Multiple Shadows</div>
99 </section>
100 </section>
101 </article>
102 </main>
103</body>
104</html>
Decoratie
border
-eigenschap
1.border-solid, .border-dashed, .border-double, .border-rounded {
2 background-color: lightsteelblue;
3}
4
5.border-solid {
6 border: 3px solid #333;
7}
8
9.border-dashed {
10 border: 3px dashed #666;
11}
12
13.border-double {
14 border: 5px double #999;
15}
16
17.border-rounded {
18 border: 2px solid #000;
19 border-radius: 15px;
20}
De border
-eigenschap wordt in CSS gebruikt om het frame van een element in te stellen. border
bestaat uit drie elementen: breedte, stijl en kleur, en deze worden gecombineerd om het frame van het element in te stellen.
Basisstructuur van border
1/* Shorthand syntax */
2border: [border-width] [border-style] [border-color];
3
4/* Example of border property */
5border: 5px solid white;
6
7/* Example of individual properties */
8border-width: 5px;
9border-style: solid;
10border-color: black;
-
Gebruik
border-width
om de dikte van de rand te specificeren. Eenheden worden gespecificeerd inpx
,em
,%
, enz. -
Specificeer het type rand met
border-style
. Je kunt de volgende waarden specificeren.- Stijlwaarden:
none
(geen rand)solid
(ononderbroken lijn)dotted
(Gestippelde lijn)dashed
(Streepjeslijn)double
(Dubbele lijn)groove
(gegroefde lijn)ridge
(geribbelde lijn)inset
(ingedrukte schaduwlijn)outset
(uitstekende schaduwlijn)
- Stijlwaarden:
Specificeer de kleur van de rand met border-color
. Kleur kan worden gespecificeerd met kleurnamen, rgb()
, rgba()
, hex
, enz.
Individuele instellingen voor elke zijde
1.box {
2 border-top: 3px solid red; /* Top border: 3px solid red */
3 border-right: 5px dashed blue; /* Right border: 5px dashed blue */
4 border-bottom: 2px double green; /* Bottom border: 2px double green */
5 border-left: 1px dotted black; /* Left border: 1px dotted black */
6}
U kunt ook verschillende stijlen voor elke zijde instellen zoals dit.
Individuele instellingen voor breedte, stijl en kleur
1.box {
2 /* Specify border width for top, right, bottom, and left */
3 border-width: 2px 4px 6px 8px;
4
5 /* Specify border style for top, right, bottom, and left */
6 border-style: solid dotted dashed double;
7
8 /* Specify border color for top, right, bottom, and left */
9 border-color: red green blue yellow;
10}
U kunt elk aspect ook afzonderlijk specificeren met border-width
, border-style
en border-color
.
Combineren met border-radius
1.box-rounded {
2 border: 2px solid #000;
3 border-radius: 10px; /* Round corners by 10px */
4}
Met de eigenschap border-radius
kunt u de hoeken van de rand afronden.
border-radius
-eigenschap
1.border-radius-all-rounded, .border-radius-top-left-rounded, .border-radius-ellipse-corners {
2 background-color: lightsteelblue;
3}
4
5/* Round all corners */
6.border-radius-all-rounded {
7 border-radius: 20px;
8}
9
10/* Round only the top-left corner */
11.border-radius-top-left-rounded {
12 border-top-left-radius: 20px;
13}
14
15/* Elliptical corners */
16.border-radius-ellipse-corners {
17 border-radius: 50px / 25px;
18}
De eigenschap border-radius
wordt gebruikt om de hoeken van een element af te ronden. U kunt de vier hoeken van een HTML-element soepel afronden, waardoor rechthoeken of vierkanten een afgerond ontwerp krijgen.
Uitleg:
- Met de klasse
border-radius-all-rounded
worden alle hoeken afgerond met 20 pixels, wat resulteert in een soepel afgeronde doos. - Met de klasse
border-radius-top-left-rounded
wordt alleen de linkerbovenhoek afgerond met 20 pixels, terwijl de andere hoeken vierkant blijven. - De klasse
border-radius-ellipse-corners
maakt elliptische hoeken, wat resulteert in een doos met een horizontaal uitgerekte afgeronde vorm.
Het formaat van de eigenschap border-radius
1border-radius: value;
2border-radius: top-left-and-bottom-right top-right-and-bottom-left;
3border-radius: top-left top-right bottom-right bottom-left;
4border-top-left-radius: value;
5border-top-right-radius: value;
6border-bottom-right-radius: value;
7border-bottom-left-radius: value;
- De waarde van de eigenschap
border-radius
wordt meestal opgegeven in pixels of procenten. U kunt ook 1 tot 4 waarden instellen.- Het opgeven van één waarde maakt alle hoeken gelijkmatig rond.
- Bij het opgeven van twee waarden wordt de eerste waarde toegepast op de linkerbovenhoek en rechterbenedenhoek, en de tweede waarde op de rechterbovenhoek en linkerbenedenhoek.
- Door vier waarden op te geven, kunt u verschillende radii voor elke hoek instellen. De waarden worden met de klok mee toegepast vanaf de linkerbovenhoek.
- U kunt ook individueel specificeren, zoals
border-top-left-radius
.
1border-radius: 50px / 25px;
- De eigenschap
border-radius
kan ook verticale en horizontale radii afzonderlijk specificeren om de hoeken elliptisch te maken. In dit geval scheidt u met/
.- Bijvoorbeeld, door
50px / 25px
op te geven, wordt de horizontale straal 50 pixels en de verticale straal 25 pixels.
- Bijvoorbeeld, door
Samenvatting
border-radius
is een eigenschap om de hoeken van een element af te ronden.- U kunt de afronding van de hoeken specificeren in pixels of procenten, toepassen op alle hoeken, specifieke hoeken, of ze elliptisch maken.
- Het is nuttig voor flexibele ontwerpen en het aanpassen van gebruikersinterfaces.
outline
-eigenschap
1.outline-solid, .outline-dashed, .outline-double, .outline-offset {
2 background-color: lightsteelblue;
3}
4
5.outline-solid {
6 outline: 2px solid red;
7}
8
9.outline-dashed {
10 outline: 3px dashed blue;
11}
12
13.outline-double {
14 outline: 4px double green;
15}
16
17.outline-offset {
18 outline: 2px solid purple;
19 outline-offset: 10px;
20}
De outline
-eigenschap is een CSS-eigenschap om de lijn in te stellen die om een element wordt getekend.
outline
lijkt op border
, maar verschilt op de volgende punten:.
outline
beïnvloedt het boxmodel van het element niet, dus het heeft geen invloed op de lay-out van het element.- Aangezien
outline
buiten het element wordt getekend, verschijnt het buiten deborder
. - De
border
wordt binnen het element getekend, dus het kan de grootte en lay-out van het element beïnvloeden.
In dit voorbeeld is de outline
-eigenschap als volgt ingesteld:.
- De
outline-solid
-klasse stelt een 2px dikke, solide rode outline in. - De
outline-dashed
-klasse stelt een 3px blauwe, gestreepte outline in. - De
outline-double
-klasse stelt een 4px dikke, groene dubbelzijdige outline in. - De
outline-offset
-klasse stelt een ruimte van 10px in tussen de outline en het element.
Basis Syntax
1element {
2 outline: outline-width outline-style outline-color;
3 outline-offset: 10px;
4}
outline-width
outline-width
specificeert de dikte van de outline.- Je kunt specifieke waarden opgeven zoals
thin
,medium
,thick
, of in eenheden zoalspx
,em
.
outline-style
outline-style
specificeert de stijl van de outline.- Je kunt stijlen opgeven zoals
solid
,dotted
,dashed
,double
,groove
,ridge
,inset
,outset
,none
, enz.
outline-color
outline-color
specificeert de kleur van de outline.- Je kunt elke gewenste kleur opgeven met behulp van namen, HEX, RGB, enz.
outline-offset
outline-offset
specificeert de afstand tussen de outline en het element.- Je kunt exacte waarden opgeven in eenheden zoals
px
,em
, enz.
box-shadow
-eigenschap
1.box-shadow-basic-shadow, .box-shadow-inset-shadow, .box-shadow-multiple-shadow {
2 background-color: lightsteelblue;
3}
4
5/* Basic shadow */
6.box-shadow-basic-shadow {
7 box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.5);
8}
9
10/* Inner shadow */
11.box-shadow-inset-shadow {
12 box-shadow: inset 5px 5px 10px rgba(0, 0, 0, 0.3);
13}
14
15/* Multiple shadows */
16.box-shadow-multiple-shadow {
17 box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5),
18 -5px -5px 10px rgba(255, 0, 0, 0.5);
19}
De box-shadow
-eigenschap wordt gebruikt om schaduwen toe te voegen aan elementen. Met behulp van deze eigenschap kun je schaduwen rond elementen creëren om een gevoel van dimensionaliteit en diepte uit te drukken.
Uitleg:
-
In de
box-shadow-basic-shadow
klasse wordt een vervaagde zwarte schaduw weergegeven rechtsonder het element. -
In de
box-shadow-inset-shadow
klasse wordt een vervaagde schaduw weergegeven binnenin het element. Met de schaduw naar binnen kunt u een verzonken ontwerp creëren. -
In de
box-shadow-multiple-shadow
klasse worden twee schaduwen, zwart en rood, toegepast op het element. Omdat ze op verschillende posities worden weergegeven, wordt een driedimensionaal effect bereikt.
Formaat van de box-shadow
-eigenschap
1box-shadow: [1:horizontal offset] [2:vertical offset] [3:blur radius] [4:spread radius] [5:color];
2box-shadow: inset [1:horizontal offset] [2:vertical offset] [3:blur radius] [4:spread radius] [5:color];
Betekenis van elke waarde
De eerste horizontale offset
is de waarde van de horizontale verschuiving, die de positie van de schaduw vanaf de linkerzijde van het element aangeeft. Een positieve waarde plaatst de schaduw naar rechts, en een negatieve waarde plaatst deze naar links.
De tweede verticale offset
is de waarde van de verticale verschuiving, die de positie van de schaduw vanaf de bovenzijde van het element aangeeft. Een positieve waarde plaatst de schaduw onder het element, en een negatieve waarde plaatst deze erboven.
De derde vervagingsradius
is de waarde voor de hoeveelheid vervaging, die de wazigheid van de schaduw aangeeft. Hoe groter de waarde, hoe meer de schaduw verspreidt, resulterend in een meer vervaagde schaduw. Een positieve waarde plaatst de schaduw onder het element, en een negatieve waarde plaatst deze erboven. Dit is optioneel, en de standaardwaarde is 0
, wat betekent dat er geen vervaging op de schaduw is.
De vierde spreadradius
is de waarde voor de spreidingsrange, die aangeeft hoe veel de schaduw zich uitstrekt. Een positieve waarde zorgt ervoor dat de schaduw groter wordt, terwijl een negatieve waarde deze kleiner maakt. Deze waarde is ook optioneel.
De vijfde kleur
is de kleurwaarde, die de kleur van de schaduw aangeeft. Kleuren kunnen worden ingesteld met behulp van kleurnamen, RGB, HEX, HSL en andere kleurmodellen die beschikbaar zijn in CSS. Als deze wordt weggelaten, wordt de standaard tekstkleur van het element (waarde van de kleur
-eigenschap) toegepast.
U kunt ook eerst het sleutelwoord inset
specificeren. Bij het specificeren van het sleutelwoord inset
wordt de schaduw binnenin het element getekend in plaats van buiten het element. Het is ook mogelijk om meerdere schaduwen in te stellen, gescheiden door komma's.
Voorbeeld van box-shadow
Voorbeeld van een basis schaduw
1div {
2 box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.5);
3}
- De horizontale offset is
10px
, wat resulteert in een schaduw 10 pixels naar rechts. - De verticale offset is
10px
, wat resulteert in een schaduw 10 pixels naar beneden. - De vervaging radius is
5px
, wat resulteert in een schaduw met een vervaging van 5 pixels. - De kleur is
rgba(0, 0, 0, 0.5)
, wat resulteert in een semi-transparante zwarte kleur.
Voorbeeld van een binnenschaduw
1div {
2 box-shadow: inset 5px 5px 10px rgba(0, 0, 0, 0.3);
3}
- Door
inset
te gebruiken wordt de schaduw binnen het element getekend.
Voorbeeld van meerdere schaduwen
1div {
2 box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5), -5px -5px 10px rgba(255, 0, 0, 0.5);
3}
- Je kunt ook meerdere schaduwen instellen, gescheiden door komma's. In dit voorbeeld worden twee schaduwen toegepast: een zwarte schaduw en een rode schaduw.
Samenvatting
box-shadow
is een eigenschap die wordt gebruikt om schaduwen toe te voegen aan elementen om diepte te creëren.- Door horizontale en verticale offsets, vervaging, verspreidingsradius en kleur te combineren, kunnen verschillende effecten worden bereikt.
- Je kunt schaduwen binnenin tekenen met
inset
, en je kunt ook meerdere schaduwen tegelijk instellen.
Je kunt het bovenstaande artikel volgen met Visual Studio Code op ons YouTube-kanaal. Bekijk ook het YouTube-kanaal.