一、簡介
css 盒子模型(元素框)由元素內容(content)、內邊距(padding)、邊框(border)、外邊距(margin)組成。
盒子模型,最裡面的部分是實際內容;直接包圍內容的是內邊距;內邊距的外邊緣是邊框;邊框之外的是外邊距。
內邊距呈現了元素的背景;外邊距預設是透明的,所以不會遮擋它後面的任何元素。
二、一些說明
內邊距、邊框和外邊距都是可選擇的,預設都為 0。
*在 css 中,width 和 height 指的是內容區域的高度和寬度。增加內邊距、邊框和外邊距不會影響內容區域的尺寸,但是會增加元素框的總尺寸。
舉個例子:假設元素框的每個邊上有 10px(畫素)的外邊距和 5px 的內邊距。如果希望這個元素框達到 100px,就需要將內容的寬度設定為 70px。請看下圖↓
padding、border 和 margin 可以應用於乙個元素的所有邊,也可以應用於單獨的邊,比如 margin-top: 10px,就是只對外邊距的上面起作用。
外邊距可以是負值,很多情況下,都要使用負值的外邊距。
三、萬惡的 ie
上面我們一直說的是 w3c 標準盒子模型,但是萬惡的 ie 就不(ie6 之前版本及怪異模式下的 ie6~ie8),它使用 ie 盒子模型。
我們上面有提到「在 css 中,width 和 height 指的是內容區域的高度和寬度。」但是 ie 盒子模型中:width 屬性不是內容的寬度,而是「內容的寬度+內邊距的寬度*2+邊框的寬度*2」的總和;而 height = 內容的高度+內邊距的高度*2+邊框的高度*2。
怎麼解決這個相容問題呢?
雖然有方法解決這個問題。但是目前最好的解決方案是迴避這個問題。也就是,不要給元素新增具有指定寬度的內邊距,而是嘗試將內邊距或外邊距新增到元素的父元素和子元素。
四、參考鏈結
1. w3school css 框模型概述
2. 瀏覽器的標準模式和怪異模式以及盒子模型
(完)
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盒...