box-sizing: border-box什么意思?


當一個盒子的總寬度確定之后,要想給盒子添加邊框或內邊距,往往需要更改 width屬性值,才能保證盒子總寬度不變,操作起來煩瑣且容易出錯,運用CSS3的box-sizing屬性可以輕松解決這個問題。box-sizing屬性用於定義盒子的寬度值和高度值是否包含元素的內邊距和邊框,其基本語法格式如下。

box-sizing: content-box/border-box;

在上面的語法格式中,box-sizing屬性的取值可以為content-box或border-box,對它們的解釋如下。

●content-box:瀏覽器對盒模型的解釋遵從W3C標准,當定義width和height時,它的參數值不包括border和padding。

●border-box:當定義width和height時,border和padding的參數值被包含在width和height之內。

下面通過一個案例對box-sizing屬性進行演示,如下所示。

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>box-sizing屬性用法|黑馬前端開發http://web.itheima.com</title>
    <style type="text/css">
        .box1{
            width: 300px;
            height: 100px;
            padding-right: 10px;
            background: #F90;
            border: 10px solid #ccc;
            box-sizing: content-box;
        }
        .box2{
            width: 300px;
            height: 100px;
            padding-right: 10px;
            background: #F90;
            border: 10px solid #ccc;
            box-sizing: border-box;
        }
    </style>
</head>
<body>
    <div class="box1">content_box屬性</div>
    <div class="box2">border_box屬性</div>
</body>
</html>

 

在上面案例中定義了兩個盒子,並對它們設置相同的寬、高、右內邊距和邊框樣式。並且,對第一個盒子定義“box-sizing: content-box;”樣式,對第二個盒子定義“box-sizing: border-box;”樣式。

box-sizing用法

可以發現應用了“box-sizing: content-box;”樣式的盒子1,寬度比width參數值多出30px,總寬度變為330px;而應用了“box-sizing: border-box;”樣式的盒子 2,寬度等於width參數值,總寬度仍為300px。應用“box-sizing: border-box;”樣式后,盒子border和padding的參數值是被包含在width和height之內的。

 原文:http://www.itheima.com/news/20210924/115317.html


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM