前言
本文介紹的是利用CSS3的新屬性box-sizing,解決div寬度設(shè)置width:100%后再設(shè)置padding或margin超出父元素的問題,有需要的朋友們可以參考借鑒。
語法
box-sizing: content-box|border-box|inherit;
值一、content-box
這是由 CSS2.1 規(guī)定的寬度高度行為。
寬度和高度分別應(yīng)用到元素的內(nèi)容框。
在寬度和高度之外繪制元素的內(nèi)邊距和邊框。
值二、border-box
為元素設(shè)定的寬度和高度決定了元素的邊框盒。
就是說,為元素指定的任何內(nèi)邊距和邊框都將在已設(shè)定的寬度和高度內(nèi)進行繪制。
通過從已設(shè)定的寬度和高度分別減去邊框和內(nèi)邊距才能得到內(nèi)容的寬度和高度。
值三、inherit
規(guī)定應(yīng)從父元素繼承 box-sizing 屬性的值。
例子
<!DOCTYPE html>
<html>
<head>
<style>
div.container
{
width:100%;
border:1em solid;
padding:15px;
box-sizing:border-box;
}
div.box
{
box-sizing:border-box;
-moz-box-sizing:border-box; /* Firefox */
-webkit-box-sizing:border-box; /* Safari */
width:100%;
border:1em solid red;
float:left;
padding:15px;
}
</style>
</head>
<body>
<div class="container">
<div class="box">這個 div 占據(jù)左半部分。</div>
</div>
</body>
</html>
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。