Elementide laiendamine CSS-is JavaScripti jaoks
CSS-i omaduste
width ja
height
määramine ei garanteeri, et element saab
määratud suuruse. Vaatame seda
näidete varal.
Näide
Praegu on elemendi mõõtmed samad määratutega:
<div id="elem">
text
</div>
#elem {
width: 200px;
height: 200px;
margin: 50px auto;
background: #CFF5BF;
}
:
Näide
Ja nüüd määrame elemendile omaduse
padding.
Selle tulemusena muutub elemendi tegelik laius
suuremaks ja laieneb määratud väärtuse
sisemise tagasitõrje võrra:
<div id="elem">
text
</div>
#elem {
padding: 25px;
width: 200px;
height: 200px;
margin: 50px auto;
background: #CFF5BF;
}
:
Näide
Piiri olemasolu laiendab elementi samuti:
<div id="elem">
text
</div>
#elem {
width: 200px;
height: 200px;
margin: 50px auto;
background: #CFF5BF;
border: 20px solid #F0D7A1;
}
:
Näide
Omadus box-sizing
võimaldab muuta ülalkirjeldatud käitumist.
Saab teha nii, et ei sisemine tagasitõrje
ega piir ei laiendaks elementi.
Selleks tuleb sellele omadusele
määrata väärtus border-box:
<div id="elem">
text
</div>
#elem {
box-sizing: border-box;
padding: 20px;
width: 200px;
height: 200px;
margin: 50px auto;
background: #CFF5BF;
border: 20px solid #F0D7A1;
}
:
Kirjeldatu tähtsus
JavaScripti vaatenurgast on kirjeldatud olukord
mitte väga mugav. Sest selgub, et lugedes
omaduse width väärtust, ei saa me
olla üldse kindlad, et element on
just selle laiusega.