css盒模型

來源:互聯網
上載者:User

標籤:box   style   改變   標準   沒有   contexts   模型   css布局   image   

css盒子模型是為了讓我們充分理解div+css模型的定位功能,盒子模型在學習div+css布局方式中必須要學習的一個模型。

那什麼是css盒模型呢?

  網頁設計中常聽到的屬性名稱:內容(content)、填充(padding)、邊框(border)、邊界(margin)。css盒模型都具備這些屬性。這些屬性和日常生活中盒子的屬性是一樣的。內容就是盒子裡面裝的東西,而填充就是像盒子裡裝的一些反震的材料,邊框就是箱子的本身,邊界呢就像盒子之間的空隙。

盒子的模型有2種,分別是IE盒子模型標準盒子模型。

IE盒子模型

  

 

標準盒子模型

 

css如何設定這兩種模型

 

瀏覽器預設的方式是content-box(標準模型 ),通過改變樣式box-sizing來切換content-box(標準模型)和border-sizing(IE模型)

js如何設定擷取盒模型對應的寬和高

有4種方式

第一種:

  dom.style.width/height

  缺點:只能擷取內聯樣式中的style值。

第二種:

  dom.currentStyle.width/height

  缺點:只能擷取IE瀏覽器下的值。相容性不好

第三種:

  window.getComputerStyle(dom).width/height

  缺點:只能用來擷取不能用來設定改變值

第四種:

  dom.getBoundingClientRect().width/height

  優點:能夠用dom.getBoundingClientRect()擷取一個矩形對象,其中包括top,left,right,bottom4個屬性,以及返回的注意(IE盒子模型的寬高

說到盒模型這裡不得不再提到盒模型的邊距重疊。什麼是盒模型的邊距重疊呢

先看個例子

        .content{           background: red;        }        .child{            background:#007aff;            height: 100px;            margin-top: 20px;        }

,父級元素的顏色沒有顯示出來,顯示的高度是100。重點來了現在給父級元素加上一個屬性overflow:hidden。

,content的高度變成120了,這就是邊距重疊。可以理解成加了一個overflow屬性相當於加了一個BFC,具體可以參考http://www.w3cplus.com/css/understanding-block-formatting-contexts-in-css.html。

 

css盒模型

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.