關於box sizing布局

2021-08-22 10:14:04 字數 1388 閱讀 1201

在講box-sizing屬性之前,我們講一下盒子模型

css的盒子模型包括外邊距(margin)、邊框(padding)、內邊距(padding)、元素內容(content),如下圖

在頁面上呈現的盒子的寬度和高度為:

width = content + padding + border

height = content + padding + border

例如,我們設定乙個div的width為100px,border為10px,padding為10px,則實際顯示的盒子的width = 120px,而非100px;在預設情況下我們設定的widht指的是content的寬度,而非盒子的寬度。

如果我們要設定乙個盒子的寬度而不僅僅是content的寬度,則我們可以通過使用box-sizing樣式來得到想要的效果。

box-sizing

語法:box-sizing: content-box|border-box|inherit:

(1)content-box, 預設值,可以設定元素內容框的寬度和高度,即盒子的寬高只包含內容:

寬度= border + padding + width

高度= border + padding + height

(2)border-box, 設定盒子的width/height值其實是border + padding + content 的總寬度/高度。

(3)inherit, 規定box-sizing屬性的值從父元素中繼承下來。

以上提到過,預設情況下盒子的寬高 = content的寬高,但是當我們在元素上設定box-sizing: border-box後,盒子的寬高 = content + padding + border;

當我們設定width值為400px,box-sizing: border-box時,盒子的寬度實際為400px;而

當我們設定width值為400px,box-sizing: content-box時,盒子的寬度實際為430px

對於box-sizing的相容性

box sizing 與元素布局

box sizing是用來規定乙個元素及其border和padding的關係的屬性。以下均以寬高均為200px,padding及border width均為20px的元素來舉例說明兩種情況下的布局情況。div此情況下,元素的border及padding參與元素的尺寸計算。元素實際占用空間 width...

box sizing布局學習筆記

首先學習box sizing布局之前,來了解一下css盒子模型 box model 一般來說,css盒子模型有兩種模式 我們對元素設定的寬度和高度就是內容 content 的寬度和高度,也就是內盒子的寬度 外盒子的寬度包括 content padding border的 這個模型下,我們設定的寬度和...

關於box sizing屬性

box sizing屬性包括content box default border box,padding box。1 content box,border和padding不計算入width之內 2 padding box,padding計算入width內 3 border box,border和pa...