1. 程式人生 > >低版IE常見相容問題與css hack

低版IE常見相容問題與css hack

 一、常見IE低版相容解決方式

 1、通過html頁面條件註釋

 2、css 選擇器字首法

 3、css 屬性字首法(親測)

\0 ie8+

\9 ie10-
\9\0 ie9 10
+ ie6 7
* ie6 7 
# ie6 7 
_ ie6

      通過實踐貌似不行(也有可能是我沒理解到位奮鬥

二、常見IE低版相容問題

1、如果容器的width是偶數的時候50%是可以在一行的,如果不是那右邊的就會換行。
2、font-size:0 避免兩個50% 換行,但在ie中會使子元素的text-indent失效,
3、ie低版text-indent屬性使之無效可設定font-size:0; line-height:0;
3、text-indent和display:inline-block會導致 一個偏移margin的bug,可把當前元素設定為block,網上的zoom:1觸發layout無效
   設定當前元素float也可,
4、ie兩個50%不換行,常規瀏覽器中有時也不換行,單隻要在編碼的時候回車 都會導致換行,通過設定float也可避免換行
5、所有ie 預設p高度和常規瀏覽器高度不同
6、ie低 預設div block 當width:auto,padding不會增加容器width,當zoom:1或觸發layout後則會增加
8、ie低 margin-bottom或margin, 如果當前元素為其父元素的最後一個元素則margin-bottom的則會加到當前元素中去
9、ie低 margin、padding 會造成各種問題特別是padding
10、jquery2.0不支援ie9
11、ie7低 不支援display inline-block,採用zoom觸發 layout
12、zoom 表示縮放比例,css3 scale是基於這個實現的
13、觸發layout, zoom、float、position absolute、設定寬高、     ie7 overflow、min-width
14、ie7 在遇到\9之後再遇到\9\0就會報錯,這個樣式將不在生效
15、通用與瀏覽器高版本的css放到最前面
16、ie低 float right會換行, 把float元素放噹噹前元素最前面,或絕對定位、margin、當前同級元素都加上浮動