box-sizing
Baseline
Widely available
This feature is well established and works across many devices and browser versions. Itâs been available across browsers since 2015ë 7ì.
box-sizing CSS ìì±ì ììì ëë¹ì ëì´ë¥¼ ê³ì°íë ë°©ë²ì ì§ì í©ëë¤.
ìëí´ ë³´ê¸°
box-sizing: content-box;
width: 100%;
box-sizing: content-box;
width: 100%;
border: solid #5b6dcd 10px;
padding: 5px;
box-sizing: border-box;
width: 100%;
border: solid #5b6dcd 10px;
padding: 5px;
<section id="default-example">
<div id="example-element-parent">
<p>Parent container</p>
<div class="transition-all" id="example-element">
<p>Child container</p>
</div>
</div>
</section>
#example-element-parent {
width: 220px;
height: 200px;
border: solid 10px #ffc129;
margin: 0.8em;
}
#example-element {
height: 60px;
margin: 2em auto;
background-color: rgba(81, 81, 81, 0.6);
}
#example-element > p {
margin: 0;
}
CSS ë°ì¤ 모ë¸ì 기본ê°ìì, ì§ì í ëë¹ì ëì´ë ììì ì½í ì¸ ë°ì¤ í¬ê¸°ìë§ ì ì©ë©ëë¤. ììì í ë리ë ì쪽 ì¬ë°±ì´ ìì¼ë©´ ëë¹ì ëì´ì ëí´ì íë©´ì 그립ëë¤. ë°ë¼ì í¬ê¸°ë¥¼ ì¤ì í ë, ìíë í¬ê¸°ë¥¼ ì»ì¼ë ¤ë©´ í ë리ë ì쪽 ì¬ë°±ì ê³ ë ¤í´ì¼ í©ëë¤.
box-sizing ìì±ì ì¬ì©í´ ì´ ë°©ìì ë°ê¿ ì ììµëë¤.
content-boxë 기본 CSS ë°ì¤ í¬ê¸° ê²°ì ë²ì ì¬ì©í©ëë¤. ììì ëë¹ë¥¼ 100 í½ì ë¡ ì¤ì íë©´ ì½í ì¸ ììì´ 100 í½ì ëë¹ë¥¼ ê°ì§ê³ , í ë리ì ì쪽 ì¬ë°±ì ì´ì ëí´ì§ëë¤.border-boxë í ë리ì ì쪽 ì¬ë°±ì í¬ê¸°ë ììì í¬ê¸°ë¡ ê³ ë ¤í©ëë¤. ëë¹ë¥¼ 100 í½ì ë¡ ì¤ì íê³ í ë리ì ì쪽 ì¬ë°±ì ì¶ê°íë©´, ì½í ì¸ ììì´ ì¤ì´ë¤ì´ ì´ ëë¹ 100 í½ì ì ì ì§í©ëë¤. ëë¶ë¶ì ê²½ì° ì´ í¸ì´ í¬ê¸°ë¥¼ ì¡°ì í ë ì½ìµëë¤.
구문
box-sizing ìì±ì ë¤ì í¤ìë ì¤ íëë¡ ì§ì í ì ììµëë¤.
ê°
content-box-
CSS íì¤ì´ ì ìí ì´ê¸° 기본ê°.
widthìheightìì±ì´ ì½í ì¸ ììë§ í¬í¨íê³ ìí ì¬ë°±ê³¼ í ë리ë í¬í¨íì§ ììµëë¤. ì¦.box {width: 350px; border: 10px solid black;}ì ì ì©í ììì ëë¹ë370pxì ëë¤.
ììì í¬ê¸°ë ëë¹ = ì½í ì¸ ëë¹, ëì´ = ì½í ì¸ ëì´ë¡ ê³ì°íê³ í ë리ì ì쪽 ì¬ë°±ì ìì ë£ì§ ììµëë¤.
-
border-box- :
widthìheightìì±ì´ ì쪽 ì¬ë°±ê³¼ í ë리ë í¬í¨íê³ , ë°ê¹¥ ì¬ë°±ì í¬í¨íì§ ììµëë¤. ì쪽 ì¬ë°±ê³¼ í ëë¦¬ê° ìì ìì ìì ìì¹í¨ì ì ìíì¸ì. ì¦.box {width: 350px; border: 10px solid black;}ì ì ì©í ììì ëë¹ë350pxì ëë¤. ì½í ì¸ ììì í¬ê¸°ë ììì¼ ì ìì¼ë¯ë¡border-box를 ì¬ì©í´ ìì를 ì¬ë¼ì§ê² í ìë ììµëë¤.
ììì í¬ê¸°ë ëë¹ = í ë리 + ì쪽 ì¬ë°± + ì½í ì¸ ëë¹, ëì´ = í ë리 + ì쪽 ì¬ë°± + ì½í ì¸ ëì´ë¡ ê³ì°í©ëë¤.
- :
íì 구문
box-sizing =
content-box |
border-box
ìì
ë¤ì ìì ë ë ê°ì ëì¼í ììì í¬ê¸°ê° ìë¡ ë¤ë¥¸ box-sizing ê°ì¼ë¡ ì´ë»ê² ë¬ë¼ì§ëì§ ë³´ì
ëë¤.
HTML
<div class="content-box">Content box</div>
<br />
<div class="border-box">Border box</div>
CSS
div {
width: 160px;
height: 80px;
padding: 20px;
border: 8px solid red;
background: yellow;
}
.content-box {
box-sizing: content-box;
/* Total width: 160px + (2 * 20px) + (2 * 8px) = 216px
Total height: 80px + (2 * 20px) + (2 * 8px) = 136px
Content box width: 160px
Content box height: 80px */
}
.border-box {
box-sizing: border-box;
/* Total width: 160px
Total height: 80px
Content box width: 160px - (2 * 20px) - (2 * 8px) = 104px
Content box height: 80px - (2 * 20px) - (2 * 8px) = 24px */
}
ê²°ê³¼
ëª ì¸
| Specification |
|---|
| CSS Box Sizing Module Level 3 > # box-sizing > |
| ì´ê¸°ê° | content-box |
|---|---|
| ì ì©ëì | all elements that accept width or height |
| ìì | no |
| ê³ì° ê° | as specified |
| Animation type | discrete |