CSS盒模型講解

CSS中,最重要的概念之一,就是盒模型。

盒模型由以下CSS屬性組成:

  • 內(nèi)容
  • padding 內(nèi)邊距
  • border 邊框
  • margin 外邊距

下面有一個最常見的例子,虛線不屬于盒模型,用于標(biāo)識范圍。

<div class="box"></div>

<style type="text/css">
    .box {
        width: 200px;
        height: 200px;
        background-color: green;
        padding: 20px;
        border: 5px solid red;
        margin: 50px;
    }
</style>

顯式效果:


Image 002.png

你可以使用Chrome(Ctrl + Shift + j)或者Firefox的firebug等開發(fā)者工具查看盒模型:

Image 001.png

我做了些簡單的標(biāo)記,黑色方框?qū)嵕€和最外邊的虛線一樣,都是為了標(biāo)識,而不是設(shè)置的樣式:

bo_副本.png

我們可以看到,div的內(nèi)容寬高度均為200px,對一個block或者inline-box元素設(shè)置內(nèi)邊距padding,內(nèi)邊距會影響一些CSS元素,比如說背景也會顯式在padding上。
紅色的為border,而border元素并不會算進(jìn)元素內(nèi)容,也就是說沒辦法獲得背景等。
margin元素一般是看不見的,也無法對其設(shè)置顏色等,margin常用來與其他元素分割一些距離。

通過DOM改變border的大小,或者顯式border,會改變元素的大小,可能會打亂布局,CSS中還有一個屬性outline,這個屬性和border相類似,也是可以作為邊框使用,但是和border不同的是,它是繪制在內(nèi)容上的,并不會改變盒子大小。IE7和更低版本不支持outline。

<br />

外邊據(jù)疊加

盒子模型還有一個特殊的東西,就是相鄰的外邊據(jù)相遇會進(jìn)行疊加,取最大的為最終外邊據(jù)。

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,786評論 1 92
  • 學(xué)習(xí)CSS的最佳網(wǎng)站沒有之一 http://www.w3school.com.cn/tags/index.asp ...
    Amyyy_閱讀 1,081評論 0 1
  • 1.CSS基本概念 1.1 CSS的定義 CSS(Cascading Style Sheets)層疊樣式表,主要用...
    寥寥十一閱讀 1,865評論 0 6
  • 引言 這次給大家?guī)砹薈SS-盒子模型部分的筆記,大家一同交流?? 認(rèn)識盒子模型之前,先來了解一下CSS元素的分類吧...
    zhaolion閱讀 4,327評論 9 85
  • 歡迎關(guān)注幼兒說,用簡書的媽咪,都是有品味的母親 最近幼兒說主編的心理學(xué)老師,在某次課堂上分析了親子關(guān)系的習(xí)慣性睡姿...
    幼兒說閱讀 400評論 0 0