国产av日韩一区二区三区精品,成人性爱视频在线观看,国产,欧美,日韩,一区,www.成色av久久成人,2222eeee成人天堂

CSS3 框大小

CSS3 框大小

CSS3?box-sizing?屬性可以設置 width 和 height 屬性中包含了 padding(內(nèi)邊距) 和 border(邊框)。


不使用 CSS3 box-sizing 屬性

默認情況下,元素的寬度與高端計算方式如下:

width(寬) + padding(內(nèi)邊距) + border(邊框) = 元素實際寬度

height(高) + padding(內(nèi)邊距) + border(邊框) = 元素實際高度

這就意味著我們在設置元素的 width/height 時,元素真實展示的高度與寬度會更大(因為元素的邊框與內(nèi)邊距也會計算在 width/height 中)。

5.jpg

上圖圖中的兩個 <div> 元素雖然寬度與高度設置一樣,但真實展示的大小不一致,因為 div2 指定了內(nèi)邊距:


實例

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>php中文網(wǎng)(php.cn)</title>
    <style>
        .div1 {
            width: 300px;
            height: 100px;
            border: 1px solid blue;
        }
        .div2 {
            width: 300px;
            height: 100px;
            padding: 50px;
            border: 1px solid red;
        }
    </style>
</head>
<body>
<div class="div1">這個是個較小的框 (width 為 300px ,height 為 100px)。</div>
<br>
<div class="div2">這個是個較大的框 (width 為 300px ,height 為 100px)。</div>
</body>
</html>

運行嘗試一下

使用這種方式如果想要獲得較小的那個框且包含內(nèi)邊距,就不得不考慮到邊框和內(nèi)邊距的寬度。

CSS3 的?box-sizing?屬性很好的解決了這個問題。


使用 CSS3 box-sizing 屬性

CSS3?box-sizing?屬性在一個元素的 width 和 height 中包含 padding(內(nèi)邊距) 和 border(邊框)。

如果在元素上設置了?box-sizing: border-box;?則 padding(內(nèi)邊距) 和 border(邊框) 也包含在 width 和 height 中:

實例

以下是兩個 <div> 元素添加?box-sizing: border-box;?屬性的簡單實例。

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php中文網(wǎng)(php.cn)</title> 
<style> 
.div1 {
    width: 300px;
    height: 100px;
    border: 1px solid blue;
    box-sizing: border-box;
}
.div2 {
    width: 300px;
    height: 100px;    
    padding: 50px;
    border: 1px solid red;
    box-sizing: border-box;
}
</style>
</head>
<body>
<div class="div1">兩個 div 現(xiàn)在是一樣大小的!</div>
<br>
<div class="div2">php中文網(wǎng)!</div>
</body>
</html>

運行嘗試一下

?box-sizing: border-box;?效果更好,也正是很多開發(fā)人員需要的效果。


以下代碼可以讓所有元素以更直觀的方式展示大小。很多瀏覽器已經(jīng)支持?box-sizing: border-box;?(但是并非所有 - 這就是為什么 input 和 text 元素設置了 width: 100%; 后的寬度卻不一樣)。

所有元素使用 box-sizing 是比較推薦的:

<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8"> 
<title>php中文網(wǎng)(php.cn)</title> 
<style>
* {
    box-sizing: border-box;
} 
input, textarea {
    width: 100%;
}
</style>
</head>
<body>
<form action="action_page.php">
用戶名:<br>
<input type="text" name="username" value="php"><br>
郵箱:<br>
<input type="text" name="email" value="429240967@qq.com"><br>
評論:<br>
<textarea name="message" rows="5" cols="30">
</textarea>
<br><br>
<input type="submit" value="Submit">
</form> 
<p><strong>提示:</strong> 可以嘗試移除樣式中的 box-sizing 屬性,看看會發(fā)生什么。注意移除后部分瀏覽器 input, textarea, 和 submit 按鈕的寬度不一致。</p>
</body>
</html>

運行嘗試一下



繼續(xù)學習
||
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title>php中文網(wǎng)(php.cn)</title> <style> .div1 { width: 300px; height: 100px; border: 1px solid blue; box-sizing: border-box; } .div2 { width: 300px; height: 100px; padding: 50px; border: 1px solid red; box-sizing: border-box; } </style> </head> <body> <div class="div1">兩個 div 現(xiàn)在是一樣大小的!</div> <br> <div class="div2">php中文網(wǎng)!</div> </body> </html>
提交重置代碼