天天看點

浮動

文檔流是文檔中可顯示對象在排列時所占用的位置。

1、塊在一排顯示

2、内聯支援寬高

3、預設内容撐開寬度

4、脫離文檔流

5、提升層級半層

每個盒子分為元素層和内容層,元素層包括背景樣式等,在下層,内容層在元素層的上面,浮動提升層級半層,就可以讓該盒子下面的另一個盒子的元素層上移到該盒子下,而内容層則進不去。

4和5什麼差別?

clear:left | right | both | none | inherit;元素的某個方向上不能有浮動元素。

clear:both; 在左右兩側均不允許浮動元素。

1.加高

問題:擴充性不好

2.父級浮動

問題:頁面中所有元素都加浮動,margin左右自動失效(floats bad !)

3.inline-block 清浮動方法:

問題:margin左右auto失效;margin:auto;有元素左右居中的效果。

4.空标簽清浮動

問題:IE6 最小高度 19px;(解決後IE6下還有2px偏差)

5.br清浮動

問題:不符合工作中:結構、樣式、行為,三者分離的要求。

6.after僞類 清浮動方法(現在主流方法)

.clear:after{content:”;display:block;clear:both;}

.clear{zoom:1;}

after僞類: 元素内部末尾添加内容;

:after{content”添加的内容”;} IE6,7下不相容

元素:after{

content:”内容”;

background:”red”;

display:block;

clear:both;

}

可以實作在元素後面添加内容,并設定添加内容的顔色等屬性。

zoom 縮放

a、觸發 IE下 haslayout,使元素根據自身内容計算寬高。

b、FF 不支援;

7.overflow:hidden 清浮動方法;

問題:需要配合 寬度 或者 zoom 相容IE6 IE7;

overflow:hidden:超出父級元素範圍的元素隐藏。

overflow:auto:如果有超出父級元素範圍的元素會加上滾動條。

overflow: scroll | auto | hidden;

overflow:hidden;溢出隐藏(裁刀!)