Mga katangian ng CSS na nauugnay sa modelong kahon
Ipinaliwanag ng artikulong ito ang mga katangian ng CSS na nauugnay sa modelong kahon.
Matututuhan mo ang mga gamit at syntax para sa mga katangian gaya ng lapad, taas, at gilid (margin).
YouTube Video
HTML para sa Preview
css-box.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>Box Model Related CSS Properties</title>
7 <link rel="stylesheet" href="css-base.css">
8 <link rel="stylesheet" href="css-box.css">
9</head>
10<body>
11 <!-- Header -->
12 <header>
13 <h1>Box Model Related CSS Properties</h1>
14 </header>
15
16 <!-- Main content -->
17 <main>
18 <header>
19 <h2>Box Model Related Properties</h2>
20 </header>
21 <article>
22 <h3>width and height</h3>
23 <section>
24 <header><h4>width: 250px; height: 150px;</h4></header>
25 <section class="sample-view">
26 <div class="width-height-fixed">Fixed size(250px,150px)</div>
27 </section>
28 </section>
29 <section>
30 <header><h4>width: 50%; height: 50%;</h4></header>
31 <section class="sample-view">
32 <div class="width-height-percent">Percentage size(50%,50%)</div>
33 </section>
34 </section>
35 <section>
36 <header><h4>width: min-content; height: min-content;</h4></header>
37 <section class="sample-view">
38 <div class="width-height-min-content">This is an example of min-content.</div>
39 </section>
40 </section>
41 <section>
42 <header><h4>width: max-content; height: max-content;</h4></header>
43 <section class="sample-view">
44 <div class="width-height-max-content">This is an example of max-content.</div>
45 </section>
46 </section>
47 <section>
48 <header><h4>width: fit-content; max-width: 150px;</h4></header>
49 <section class="sample-view">
50 <div class="width-height-fit-content">This is an example of fit-content.</div>
51 </section>
52 </section>
53 </article>
54 <article>
55 <h3>margin and padding</h3>
56 <section style="height: auto;">
57 <h4>Margin & padding</h4>
58 <header><h4>margin: 20px; padding: 15px;</h4></header>
59 <section class="sample-view">
60 <div class="margin-padding">margin & padding</div>
61 </section>
62 </section>
63 <section style="height: auto;">
64 <h4>Margin only(no padding)</h4>
65 <header><h4>margin: 20px; padding: 0;</h4></header>
66 <section class="sample-view">
67 <div class="margin-only">margin only</div>
68 </section>
69 </section>
70 <section style="height: auto;">
71 <h4>No margin & padding example</h4>
72 <header><h4>margin: 0; padding: 0;</h4></header>
73 <section class="sample-view">
74 <div class="no-margin">no margin & padding</div>
75 </section>
76 </section>
77 </article>
78 <article>
79 <h3>box-sizing</h3>
80 <section style="height: auto;">
81 <header><h4>box-sizing: content-box</h4></header>
82 <section class="sample-view">
83 <div style="width: 300px;">width: 300px</div>
84 <div class="content-box">Content Box</div>
85 <div style="width: 360px;">width: 360px</div>
86 </section>
87 </section>
88 <section>
89 <header><h4>box-sizing: border-box</h4></header>
90 <section class="sample-view">
91 <div style="width: 300px;">width: 300px</div>
92 <div class="border-box">Border Box</div>
93 </section>
94 </section>
95 </article>
96 <article>
97 <h3>visibility</h3>
98 <section>
99 <header><h4>visibility: visible</h4></header>
100 <section class="sample-view">
101 <div class="visibility-visible">Visible Box</div>
102 </section>
103 <header><h4>visibility: hidden</h4></header>
104 <section class="sample-view">
105 <div class="visibility-hidden">Hidden Box</div>
106 </section>
107 <header><h4>visibility: collapse</h4></header>
108 <section class="sample-view">
109 <div class="visibility-collapse">Collapsed Box (Hold layout space)</div>
110 </section>
111 <header><h4>HTML</h4></header>
112 <pre><div class="visibility-collapse">Collapsed Box (Hold layout space)</div></pre>
113 <header><h4>visibility: collapse</h4></header>
114 <section class="sample-view">
115 <table style="height: 200px; margin: auto;">
116 <tr class="visibility-collapse">
117 <td>Cell 1 (Remove layout space)</td>
118 </tr>
119 <tr>
120 <td>Cell 2</td>
121 </tr>
122 </table>
123 </section>
124 <header><h4>HTML</h4></header>
125<pre>
126<table style="height: 200px; margin: auto;">
127 <tr class="visibility-collapse">
128 <td>Cell 1 (Remove layout space)</td>
129 </tr>
130 <tr>
131 <td>Cell 2</td>
132 </tr>
133</table>
134</pre>
135 </section>
136 </article>
137 </main>
138</body>
139</html>
May Kaugnayan sa Modelong Kahon
Mga Katangian ng width
at height
1.width-height-fixed {
2 width: 250px;
3 height: 150px;
4 background-color: lightblue;
5}
6
7.width-height-percent {
8 width: 50%;
9 height: 50%;
10 background-color: lightblue;
11}
12
13.width-height-min-content {
14 width: min-content;
15 height: min-content;
16 background-color: lightblue;
17}
18
19.width-height-max-content {
20 width: max-content;
21 height: max-content;
22 background-color: lightblue;
23}
24
25.width-height-fit-content {
26 width: fit-content;
27 max-width: 150px;
28 background-color: lightblue;
29}
Ang mga katangiang width
at height
ay mga katangian ng CSS na ginagamit upang tukuyin ang lapad at taas ng isang elemento. Kadalasang ginagamit ang mga ito sa pagtatakda ng sukat ng mga block elements, larawan, bidyo, atbp.
- Sa klase ng
width-height-fixed
, nakatakdang halaga ang inilalaan para sa lapad at taas. - Sa klase ng
width-height-percent
, porsiyentong halaga ang inilalaan para sa lapad at taas.
Mga halagang maaaring italaga
Ang mga katangiang width
at height
ay maaaring magkaroon ng sumusunod na mga halaga.
auto
: Karaniwang laki. Awtomatikong ina-adjust ang laki batay sa sukat ng parent na elemento.- Nakasaad na halaga: Nagtatakda ng nakatakdang lapad sa piksel, porsiyento, o kaugnay na mga yunit.(ex:
100px
,50%
,10rem
)- Halimbawa, ang
250px
ay nagtatalaga ng lapad ng elemento sa 250 na piksel, at ang50%
ay umaayon sa 50% ng sukat ng parent na elemento.
- Halimbawa, ang
min-content
: Umaayon sa pinakamababang laki ng nilalaman.max-content
: Umaayon sa pinakamalaking laki ng nilalaman.fit-content
: Ina-adjust ang laki ng elemento ayon sa sukat ng nilalaman.
Pagtatakda ng Minimum at Maximum na Halaga
Ang min-width
, max-width
, min-height
, at max-height
ay mga katangian ng CSS na ginagamit upang magtakda ng mga hangganan ng sukat tungkol sa lapad at taas ng isang elemento. Gamit ang mga ito, masisiguro mong nananatili ang isang elemento sa isang partikular na saklaw ng laki.
Mga katangian ng margin
at padding
1.margin-padding {
2 margin: 20px; /* Margin outside the element */
3 padding: 15px; /* Padding inside the element */
4 border: 1px solid #333;
5 background-color: lightblue;
6 width: 300px;
7 height: 40px;
8}
9
10.margin-only {
11 margin: 20px; /* Margin outside the element */
12 padding: 0; /* No padding inside the element */
13 border: 1px solid #333;
14 background-color: lightblue;
15 width: 300px;
16 height: 40px;
17}
18
19.no-margin {
20 margin: 0; /* No margin outside the element */
21 padding: 0; /* No padding inside the element */
22 border: 1px solid #333;
23 background-color: lightblue;
24 width: 300px;
25 height: 40px;
26}
Ang margin
at padding
ay mga katangian sa CSS na ginagamit upang kontrolin ang panlabas at panloob na espasyo ng mga elemento sa loob ng modelong kahon. Ginagamit ang mga ito upang ayusin ang espasyo sa pagitan ng mga elemento at upang magmukhang mas maayos ang itsura.
- Sa
margin-padding
na klase, parehongmargin
atpadding
ay tinukoy. Mayroong espasyo ngmargin
sa labas ng solidong hangganan at espasyo ngpadding
sa loob ng solidong hangganan. - Sa
margin-only
na klase, tangingmargin
lamang ang tinukoy. Makikita mo na ang asul na bahagi ay mas maliit kumpara samargin-padding
na klase dahil walang espasyo ngpadding
sa loob ng solidong hangganan. - Sa
no-margin
na klase, parehongmargin
atpadding
ay itinakda sa 0. Makikita mo na ang asul na bahagi ay itinulak nang buo sa kaliwa dahil walang espasyo ngmargin
sa labas ng solidong hangganan.
Sa ganitong paraan, ang katangiang margin
ay nagtatakda ng panlabas na espasyo ng isang elemento, inaayos ang distansya sa pagitan ng mga elemento. Sa kabilang banda, ang katangiang padding
ay nagtatakda ng panloob na espasyo ng isang elemento, inaayos ang distansya sa pagitan ng nilalaman at hangganan.
Katangian ng margin
-
Itinakda ng katangiang
margin
ang panlabas na espasyo (margin) ng isang elemento. Ginagamit ito upang makagawa ng espasyo sa pagitan ng magkatabing mga elemento. Ang sumusunod na mga halaga ay maaaring itakda:. -
Mga nakatakdang halaga: Maaari mong itakda ang laki ng margin sa pixels, mga yunit na may kaugnayan (em, rem), o porsyento.(ex:
10px
,1em
,5%
) -
auto
: Kapaki-pakinabang para sa paglalagay ng block elements sa gitna. Kapag itinakda ang lapad, awtomatikong inaayos nito ang mga margin sa kaliwa at kanan. -
Positibo at negatibong mga halaga: Ang positibong mga halaga ay nagpapalawak ng espasyo, samantalang ang negatibong mga halaga ay nagpapalapit sa mga elemento.
Pinaikling notasyon:
1div.one-value {
2 margin: 20px;
3}
4
5div.two-value {
6 /* top-bottom left-right */
7 margin: 10px 5px;
8}
9
10div.three-value {
11 /* top left-right bottom */
12 margin: 10px 5px 15px;
13}
14
15div.four-value {
16 /* top right bottom left */
17 margin: 10px 5px 15px 20px;
18}
Ang katangiang margin
ay maaaring tumanggap ng isa hanggang apat na halaga.
- Isang halaga: Nalalapat sa lahat ng panig.
- Dalawang halaga: Ang una ay nalalapat sa itaas at ibaba, ang pangalawa sa kaliwa at kanan.
- Tatlong halaga: Nalalapat sa pagkakasunod ng itaas, kaliwa at kanan, ibaba.
- Apat na halaga: Nalalapat sa pagkakasunod ng itaas, kanan, ibaba, kaliwa.
Katangiang padding
Gamit:
-
Ang
padding
na property ay nagtatakda ng panloob na espasyo (padding) ng isang elemento. Ginagamit ito upang lumikha ng espasyo sa pagitan ng nilalaman at hangganan ng isang elemento. Ang sumusunod na mga halaga ay maaaring itakda:. -
Nakatakdang halaga: Tinutukoy ang sukat ng padding.(ex:
10px
,1em
,5%
) -
Hindi maaaring gumamit ng negatibong halaga. Ang mga halaga para sa padding ay kailangang positibong numero lamang.
Pinaikling notasyon:
1div.one-value {
2 padding: 20px;
3}
4
5div.two-value {
6 /* top-bottom left-right */
7 padding: 10px 5px;
8}
9
10div.three-value {
11 /* top left-right bottom */
12 padding: 10px 5px 15px;
13}
14
15div.four-value {
16 /* top right bottom left */
17 padding: 10px 5px 15px 20px;
18}
Gaya ng margin
, maaari kang tumukoy ng isa hanggang apat na halaga.
- Isang halaga: Nalalapat sa lahat ng panig.
- Dalawang halaga: Ang una ay nalalapat sa itaas at ibaba, ang pangalawa sa kaliwa at kanan.
- Tatlong halaga: Nalalapat sa pagkakasunod ng itaas, kaliwa at kanan, ibaba.
- Apat na halaga: Nalalapat sa pagkakasunod ng itaas, kanan, ibaba, kaliwa.
box-sizing
na property
1/* Default content-box : 300px + 2 * 20px + 2 * 10px = 360px */
2.content-box {
3 width: 300px;
4 padding: 20px;
5 border: 10px solid blue;
6 box-sizing: content-box;
7 background-color: lightblue;
8}
9
10/* Using border-box */
11.border-box {
12 width: 300px;
13 padding: 20px;
14 border: 10px solid red;
15 box-sizing: border-box;
16 background-color: lightcoral;
17}
Ang box-sizing
ay isang CSS na property na kumokontrol kung paano kinakalkula ang lapad at taas ng isang elemento.
- Sa
content-box
na klase, ang lapad ng elemento ay 360px. Angwidth
ay 300px, kasama ang kaliwa at kanangpadding
na kabuuang 40px at kaliwa at kanangborder
na kabuuang 20px, kaya nagiging 360px ang kabuuan. - Sa
border-box
, ang lapad ng elemento ay 300px. Kasama na angpadding
atborder
sa itinakdangwidth
.
Mga halaga ng box-sizing
May pangunahing dalawang halaga para sa box-sizing
: content-box
at border-box
, kung saan ang content-box
ang default na halaga.
content-box
1.content-box {
2 box-sizing: content-box;
3 width: 200px;
4 padding: 20px;
5 border: 10px solid black;
6}
7/*
8260px = 200px(width) +
920px(padding-left) + 20px(padding-right) +
1010px(border-left) + 10px(border-right)
11*/
Kapag itinakda ang content-box
, ang lapad at taas ng nilalaman lamang ang itinatakda ng width
at height
. Idinadagdag ang padding
at border
dito upang matukoy ang huling sukat. Sa madaling salita, ang width
at height
ay tumutukoy lamang sa lugar ng nilalaman.
Sa halimbawang ito, ang itinakdang width
ay 200px, ngunit dahil idinagdag ang lapad ng kaliwa at kanang padding
at border
, ang huling aktwal na lapad ng elemento ay 260px.
border-box
1.border-box {
2 width: 200px;
3 padding: 20px;
4 border: 10px solid black;
5 box-sizing: border-box;
6}
Kapag itinakda ang border-box
, kinakalkula ang width
at height
kasama ang padding
at border
. Sa madaling salita, ang itinakdang width
at height
ay nagiging kabuuang sukat ng nilalaman, padding
, at border
.
Sa kasong ito, ang itinakdang width
ay 200px, at dahil kasama ang padding
at border
, nananatiling 200px ang huling aktwal na lapad ng elemento. Inaayos ang padding
at border
sa loob nito.
Buod ng mga pagkakaiba sa box-sizing
Property | Paraan ng Pagkalkula | Aktwal na Pagkalkula ng Lapad |
---|---|---|
content-box (default) |
ang width ay tumutukoy lamang sa nilalaman. Idinagdag ang padding at border . |
width + padding + border |
border-box |
width ay para sa lahat (kasama ang nilalaman, padding , border ) |
Ang tinukoy na width ay ginagamit nang walang pagbabago. |
Mga Bentahe ng box-sizing
-
Ang paggamit ng
border-box
ay nagpapatatag ng layout. Ang pagdaragdag ngpadding
oborder
ay hindi binabago ang tinukoy na sukat, kaya nagiging mas madali ang mga kalkulasyon. -
Ito ay kapaki-pakinabang kapag gumagawa ng mga flexible na layout. Sa mga responsive na disenyo o kumplikadong layout, ang
border-box
ay madalas na ginagamit upang maiwasan ang hindi inaasahang pagbabago sa sukat.
Paano ilapat ang border-box
globally
1*,
2*::before,
3*::after {
4 box-sizing: border-box;
5}
Sa pamamagitan ng pagtatakda ng CSS sa ganitong paraan, maaari mong ilapat ang border-box
sa lahat ng element upang maiwasan ang hindi inaasahang pagbabago sa sukat.
Buod
- Kinokontrol ng
box-sizing
kung angpadding
atborder
ay kasama sawidth
atheight
ng elemento. - Nagpapadali ang paggamit ng
border-box
sa mga kalkulasyon ng sukat at angkop ito para sa responsive na disenyo.
Ari-arian ng visibility
1.visibility-visible {
2 visibility: visible;
3}
4
5.visibility-hidden {
6 visibility: hidden;
7}
8
9.visibility-collapse {
10 visibility: collapse;
11}
Ang ari-arian ng visibility
ay ginagamit upang ipakita o itago ang mga elemento, ngunit hindi tulad ng ari-arian ng display
, naaapektuhan nito ang layout kahit na ang elemento ay nakatago. Tinatago lamang nito ang elemento, pinapanatili ang orihinal na posisyon at laki nito nang hindi naaapektuhan ang layout ng ibang elemento.
Pangunahing Syntax
1element {
2 visibility: value;
3}
value
: Isang halaga na tumutukoy sa visibility ng elemento.
Mga Uri ng Halaga
- Ang ari-arian ng
visibility
ay maaaring itakda sa mga sumusunod na halaga:.
visible
- Ang pagtukoy sa
visible
ay magpapakita sa elemento. Ito ang default na halaga.
hidden
- Ang pagtukoy sa
hidden
ay magtatago sa elemento ngunit mananatili ang espasyo nito sa layout.
collapse
- Ang
collapse
ay karaniwang ginagamit para sa mga hilera o kolum ng talahanayan. Ang elemento ay nagiging hindi nakikita at ang espasyo nito ay hindi rin pinapansin. Kapag inilapat sa mga hilera o kolum ng talahanayan, ang mga nakatagong hilera o kolum ay ganap na tinatanggal mula sa layout. - Gayunpaman, kapag ginamit sa mga regular na block o inline na elemento, maliban sa mga elemento ng table, ito ay kumikilos tulad ng
hidden
at ang espasyo ng layout ay nananatili.
inherit
- Ang pagtukoy ng
inherit
ay magmamana ng halaga ng ari-ariangvisibility
mula sa parent na elemento.
Mga Pagkakaiba sa pagitan ng visibility
at display
Narito ang mga sumusunod na pagkakaiba sa pagitan ng visibility
at display
.
- Ang
visibility: hidden
ay itinatago ang elemento ngunit pinananatili ang espasyo at layout nito. - Ang
display: none
ay ganap na inaalis ang elemento mula sa layout, na nagpapahintulot sa ibang mga elemento na punan ang espasyong iyon.
Maaari mong sundan ang artikulo sa itaas gamit ang Visual Studio Code sa aming YouTube channel. Paki-check din ang aming YouTube channel.