2015-06-30 28 views
0

我爲使用SASS/SCSS,Compass,Bootstrap和Font-awesome的網站開發了CSS。我現在正在Chrome,Firefox,IE11和IE9中測試它。 我已確保使用Compass導入所有供應商特定的屬性,以確保獲得所有必要的供應商前綴。我也檢查了所有部分支持的屬性,以確保它們至少支持IE9與http://caniuse.com/在IE9中出現意外的怪異CSS行爲

當使用IE11測試我的網站並將文檔模式和用戶代理字符串設置爲IE9時,一切正常。但是,當通過VirtualBox測試IE9本機(從http://dev.modern.ie/tools/vms/的Win7圖像)時,我在CSS中出現了許多意想不到的奇怪行爲。

margin-left:15pxfloat:right似乎都有問題。這裏沒有真正的模式,它似乎只是隨機CSS屬性,得到不正確的呈現。

爲什麼IE9不支持margin-left和float這樣看起來很正常和支持良好的屬性?他們爲什麼在IE9模式下工作在IE11中,但不在IE9本機中工作?

+0

太寬泛。將SSCCE中的「怪異」縮小幷包含在問題中。 – user2864740

回答

0

我找到了這個隨機行爲的答案。原來,IE9只支持4095個CSS選擇器,並且會默默地忽略任何事情。 (source) 我對http://www.cssanalyser.com/進行了檢查,結果表明我有4231個選擇器。 這看起來很多,但原因是我在同一個main.css中加入了Bootstrap,Glyphicons和Font-Awesome,加上我自己的自定義css當然。 解決方案是排除Font-Awesome部分並將其放入單獨的文件中。 Cssanalyser現在顯示3600個選擇器,並且在IE9中一切正常。

+0

http://blogs.msdn.com/b/ieinternals/archive/2011/05/14/10164546.aspx –

+0

葉普,這是鏈接@JoshRobinson,它已經在我的迴應(源)中,但謝謝爲了說清楚。 – Blizwire

+0

哎呀..錯過了。我在研究自己的問題的原因時發現了它,並認爲在這裏發佈它會很好。希望沒有其他人必須長時間遇到這個:) –