CSS盒子模型

2021-08-17 23:53:06 字數 1725 閱讀 9187

css中每乙個元素都是乙個盒模型,包括html和body標籤元素。在盒模型中主要包括width、height、border、background、padding和margin這些屬性,而且他們之間的層次關係可以相互影響,來看一張盒模型的3d展示圖:

box-sizing盒模型分兩種:

它們相同之處都是對元素計算尺寸的模型,它們不同之處是兩者的計算方法不一致,原則上來說盒模型是分得很細的,這裡所看到的主要是外盒模型和內盒模型,如下面計算公式所示:

(1)w3c標準盒模型

外盒尺寸計算(元素空間尺寸)element空間高度 = 內容高度 + 內距 + 邊框 + 外距

element空間寬度 = 內容寬度 + 內距 + 邊框 + 外距

內盒尺寸計算(元素大小)

element高度 = 內容高度 + 內距 + 邊框(height為內容高度)

element寬度 = 內容寬度 + 內距 + 邊框(width為內容寬度)

(2)ie傳統下盒模型
外盒尺寸計算(元素空間尺寸)element空間高度=內容高度+外距(height包含了元素內容寬度、邊框、內距)

element寬間寬度=內容寬度+外距(width包含了元素內容寬度、邊框、內距)

內盒尺寸計算(元素大小)

element高度=內容高度(height包含了元素內容寬度、邊框、內距)

element寬度=內容寬度(width包含了元素內容寬度、邊框、內距)

在css3中新增加了box-sizing屬性,能夠事先定義盒模型的尺寸解析方式,其語法規則如下:

box-sizing: content-box

| border-box

| inherit

取值說明

屬性值屬性值說明

content-box

預設值,其讓元素維持w3c的標準盒模型,也就是說元素的寬度和高度(width/height)等於元素邊框寬度(border)加上元素內距(padding)加上元素內容寬度或高度(content width/ height),也就是element width/height = border + padding + content width / height

border-box

重新定義css2.1中盒模型組成的模式,讓元素維持ie傳統的盒模型(ie6以下版本和ie6-7怪異模式),也就是說元素的寬度或高度等於元素內容的寬度或高度。從上面盒模型介紹可知,這裡的內容寬度或高度包含了元素的border、padding、內容的寬度或高度

(此處的內容寬度或高度=盒子的寬度或高度 - 邊框 - 內距)。

inherit

使元素繼承父元素的盒模型模式

哪個常用?

如果我們將乙個div元素寬度設定為200px後,再為該div設定padding:20px;

因而由上可看出,border-box即ie盒模型更常用。

為了方便,一般我們在通用選擇器中加入ie盒模型計算方式

*

css盒子模型 CSS 盒子模型

css 盒子模型基本上是面試的必考題,因為實在是太重要了。以前寫 css 總是感覺元素的寬高十分難調,其中乙個很大的問題就是忽略了盒子模型的重要性。說到 css 盒子模型,你可能會說我知道呀,就是 margin 包 border,border 包 padding,padding 包 content ...

css盒子模型 說說css盒子模型

引用mdn官方的解釋 當對乙個文件進行布局 lay out 的時候,瀏覽器的渲染引擎會根據標準之一的 css 基礎框盒模型 css basic box model 將所有元素表示為乙個個矩形的盒子 box css 決定這些盒子的大小 位置以及屬性 例如顏色 背景 邊框尺寸 每個盒子由四個部分 或稱區...

css 盒子模型 ie盒子模型

css盒子模型 網頁設計中css技術所使用的一種思維模型。css盒子模型組成 外邊距 margin 邊框 border 內邊距 padding 內容 content css盒子模型分為 標準w3c盒子模型,ie盒子模型,注意在兩種模型中寬 width 和高 height 包括屬性的不同。標準w3c盒...