Properti CSS yang terkait dengan dekorasi model kotak
Artikel ini menjelaskan properti CSS yang terkait dengan dekorasi model kotak.
Anda dapat belajar cara menulis properti seperti border dan bayangan.
YouTube Video
HTML untuk Pratinjau
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>
Dekorasi
Properti border
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}
Properti border
digunakan dalam CSS untuk mengatur bingkai sebuah elemen. border
terdiri dari tiga elemen: lebar, gaya, dan warna, yang digabungkan untuk mengatur bingkai elemen tersebut.
Struktur Dasar dari 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;
-
Gunakan
border-width
untuk menentukan ketebalan border. Satuan ditentukan dalampx
,em
,%
, dan sebagainya. -
Tentukan jenis border dengan
border-style
. Anda dapat menentukan nilai berikut.- Nilai Gaya:
none
(tidak ada border)solid
(garis solid)dotted
(garis titik-titik)dashed
(garis putus-putus)double
(garis ganda)groove
(garis berpola alur)ridge
(garis berpola tonjolan)inset
(garis bayangan masuk)outset
(garis bayangan keluar)
- Nilai Gaya:
Tentukan warna border dengan border-color
. Warna dapat ditentukan menggunakan nama warna, rgb()
, rgba()
, hex
, dan sebagainya.
Pengaturan Individu untuk Setiap Sisi
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}
Anda juga dapat mengatur gaya yang berbeda untuk setiap sisi seperti ini.
Pengaturan Individu untuk Lebar, Gaya, dan Warna
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}
Anda juga dapat menentukan setiap aspek secara terpisah menggunakan border-width
, border-style
, dan border-color
.
Menggabungkan dengan border-radius
1.box-rounded {
2 border: 2px solid #000;
3 border-radius: 10px; /* Round corners by 10px */
4}
Dengan menggunakan properti border-radius
, Anda dapat membulatkan sudut perbatasan.
Properti border-radius
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}
Properti border-radius
digunakan untuk membulatkan sudut elemen. Anda dapat melengkungkan empat sudut elemen HTML dengan halus, mengubah persegi panjang atau persegi menjadi desain yang membulat.
Penjelasan:
- Kelas
border-radius-all-rounded
membuat semua sudut membulat dengan 20 piksel, menghasilkan kotak yang membulat halus. - Kelas
border-radius-top-left-rounded
hanya membulatkan sudut kiri atas dengan 20 piksel, sementara sudut lainnya tetap siku-siku. - Kelas
border-radius-ellipse-corners
menciptakan sudut elips, menghasilkan kotak dengan bentuk membulat yang memanjang secara horizontal.
Format dari properti 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;
- Nilai properti
border-radius
biasanya ditentukan dalam piksel atau persen. Selain itu, Anda dapat mengatur dari 1 hingga 4 nilai.- Menentukan satu nilai membuat semua sudut membulat secara seragam.
- Menentukan dua nilai akan menerapkan nilai pertama pada sudut kiri atas dan kanan bawah, serta nilai kedua pada sudut kanan atas dan kiri bawah.
- Dengan menentukan empat nilai, Anda dapat mengatur radius yang berbeda untuk setiap sudut. Nilai diterapkan searah jarum jam dari sudut kiri atas.
- Anda juga dapat menentukan secara individu seperti
border-top-left-radius
.
1border-radius: 50px / 25px;
- Properti
border-radius
juga dapat menentukan radius vertikal dan horizontal secara individu untuk membuat sudut elips. Dalam kasus ini, pisahkan dengan/
.- Sebagai contoh, menentukan
50px / 25px
menghasilkan radius horizontal 50 piksel dan radius vertikal 25 piksel.
- Sebagai contoh, menentukan
Ringkasan
border-radius
adalah properti untuk membulatkan sudut elemen.- Anda dapat menentukan kebulatan sudut dalam piksel atau persentase, menerapkannya pada semua sudut, sudut tertentu, atau menjadikannya elips.
- Ini berguna untuk desain yang fleksibel dan menyesuaikan antarmuka pengguna.
Properti outline
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}
Properti outline
adalah properti CSS untuk mengatur garis yang digambar di sekitar elemen.
outline
mirip dengan border
, tetapi memiliki perbedaan pada beberapa titik berikut:.
outline
tidak memengaruhi model kotak (box model) dari elemen, sehingga tidak memengaruhi tata letak elemen.- Karena
outline
digambar di luar elemen, maka muncul di luarborder
. border
digambar di dalam elemen, sehingga dapat memengaruhi ukuran dan tata letak elemen.
Dalam contoh ini, properti outline
diatur sebagai berikut:.
- Kelas
outline-solid
mengatur outline merah solid dengan ketebalan 2px. - Kelas
outline-dashed
mengatur outline biru putus-putus dengan ketebalan 3px. - Kelas
outline-double
mengatur outline hijau bergaris ganda dengan ketebalan 4px. - Kelas
outline-offset
mengatur jarak 10px antara outline dan elemen.
Sintaks Dasar
1element {
2 outline: outline-width outline-style outline-color;
3 outline-offset: 10px;
4}
outline-width
outline-width
menentukan ketebalan outline.- Anda dapat menentukan nilai tertentu seperti
thin
,medium
,thick
, atau dalam satuan sepertipx
,em
.
outline-style
outline-style
menentukan gaya outline.- Anda dapat menentukan gaya seperti
solid
,dotted
,dashed
,double
,groove
,ridge
,inset
,outset
,none
, dll.
outline-color
outline-color
menentukan warna outline.- Anda dapat menentukan warna apa saja menggunakan nama, HEX, RGB, dll.
outline-offset
outline-offset
menentukan jarak antara outline dan elemen.- Anda dapat menentukan nilai pasti dalam satuan seperti
px
,em
, dll.
Properti box-shadow
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}
Properti box-shadow
digunakan untuk menambahkan bayangan pada elemen. Dengan menggunakan properti ini, Anda dapat membuat bayangan di sekitar elemen untuk memberikan kesan dimensi dan kedalaman.
Penjelasan:
-
Dalam kelas
box-shadow-basic-shadow
, bayangan hitam yang buram ditampilkan di bagian kanan bawah elemen. -
Dalam kelas
box-shadow-inset-shadow
, bayangan buram ditampilkan di dalam elemen. Dengan bayangan yang masuk ke dalam, Anda dapat menciptakan desain yang tampak cekung. -
Dalam kelas
box-shadow-multiple-shadow
, dua bayangan, hitam dan merah, diterapkan pada elemen. Karena ditampilkan di posisi yang berbeda, efek tiga dimensi tercipta.
Format Properti box-shadow
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];
Makna dari setiap nilai
Horizontal offset
pertama adalah nilai offset horizontal, yang menentukan posisi bayangan dari sisi kiri elemen. Menentukan nilai positif akan menempatkan bayangan ke kanan, sedangkan nilai negatif akan menempatkannya ke kiri.
Vertical offset
kedua adalah nilai offset vertikal, yang menentukan posisi bayangan dari sisi atas elemen. Menentukan nilai positif akan menempatkan bayangan di bawah, sedangkan nilai negatif akan menempatkannya di atas.
Blur radius
ketiga adalah nilai untuk jumlah blur, yang menentukan tingkat keburaman bayangan. Semakin besar nilainya, semakin luas bayangan menyebar, menghasilkan bayangan yang lebih buram. Menentukan nilai positif akan menempatkan bayangan di bawah, sedangkan nilai negatif akan menempatkannya di atas. Ini bersifat opsional, dan default-nya adalah 0
, yang berarti tidak ada keburaman pada bayangan.
Spread radius
keempat adalah nilai rentang penyebaran, yang menentukan seberapa luas bayangan menyebar. Menentukan nilai positif akan membuat bayangan membesar, sementara nilai negatif akan membuatnya menyusut. Nilai ini juga bersifat opsional.
Color
kelima adalah nilai warna, yang menentukan warna bayangan. Warna dapat diatur menggunakan nama warna, RGB, HEX, HSL, dan model warna lainnya yang tersedia di CSS. Jika diabaikan, warna teks default elemen (nilai properti color
) akan diterapkan.
Anda juga dapat menentukan kata kunci inset
terlebih dahulu. Menentukan kata kunci inset
akan menggambar bayangan di dalam elemen daripada di luar. Dimungkinkan juga untuk mengatur beberapa bayangan yang dipisahkan oleh koma.
Contoh box-shadow
Contoh bayangan dasar
1div {
2 box-shadow: 10px 10px 5px rgba(0, 0, 0, 0.5);
3}
- Offset horizontal adalah
10px
, menciptakan bayangan 10 piksel ke kanan. - Offset vertikal adalah
10px
, menciptakan bayangan 10 piksel ke bawah. - Radius blur adalah
5px
, menghasilkan bayangan blur dengan radius 5 piksel. - Warna warna adalah
rgba(0, 0, 0, 0.5)
, menghasilkan warna hitam semi transparan.
Contoh bayangan bagian dalam
1div {
2 box-shadow: inset 5px 5px 10px rgba(0, 0, 0, 0.3);
3}
- Menggunakan
inset
untuk menggambar bayangan di dalam elemen.
Contoh bayangan ganda
1div {
2 box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.5), -5px -5px 10px rgba(255, 0, 0, 0.5);
3}
- Anda juga bisa mengatur beberapa bayangan yang dipisahkan dengan koma. Pada contoh ini, dua bayangan diterapkan: bayangan hitam dan bayangan merah.
Ringkasan
box-shadow
adalah properti yang digunakan untuk menambahkan bayangan pada elemen untuk menciptakan kesan kedalaman.- Dengan menggabungkan offset horizontal dan vertikal, blur, radius penyebaran, dan warna, berbagai efek dapat dicapai.
- Anda dapat menggambar bayangan di dalam dengan
inset
, dan juga dapat mengatur beberapa bayangan sekaligus.
Anda dapat mengikuti artikel di atas menggunakan Visual Studio Code di saluran YouTube kami. Silakan periksa juga saluran YouTube kami.