首頁技術(shù)文章正文

box-sizing的屬性及作用詳細(xì)介紹【CSS3】

更新時間:2021-09-24 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

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

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

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

●content-box:瀏覽器對盒模型的解釋遵從W3C標(biāo)準(zhǔn),當(dāng)定義width和height時,它的參數(shù)值不包括border和padding。

●border-box:當(dāng)定義width和height時,border和padding的參數(shù)值被包含在width和height之內(nèi)。

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

<!DOCTYPE html>
<html lang="zh">
<head>
    <meta charset="UTF-8">
    <title>box-sizing屬性用法</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>

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

box-sizing用法

可以發(fā)現(xiàn)應(yīng)用了“box-sizing: content-box;”樣式的盒子1,寬度比width參數(shù)值多出30px,總寬度變?yōu)?30px;而應(yīng)用了“box-sizing: border-box;”樣式的盒子 2,寬度等于width參數(shù)值,總寬度仍為300px。應(yīng)用“box-sizing: border-box;”樣式后,盒子border和padding的參數(shù)值是被包含在width和height之內(nèi)的。




猜你喜歡:

CSS怎樣更換鼠標(biāo)樣式?

圓角矩形css怎么寫?

清除input默認(rèn)樣式

CSS中px、em、rem有什么區(qū)別和不同?

黑馬程序員HTML&JS+前端高手班

分享到:
在線咨詢 我要報名
和我們在線交談!