2011-03-17 27 views
18

IE doesn't support CSS3 columns - 沒什麼大不了的,對吧?儘管如此,我試圖找到任何現代化的庫來做這個伎倆。我真的不想爲IE編寫不同的CSS,因爲那樣會對我們所不喜歡的東西產生太多的關注和關注。有什麼建議麼?如何在IE上顯示CSS3列?

+1

你的問題是,IE是一個相對的問題...一些版本支持一些事情,而另一些則不支持。還有那麼多的版本......有些人仍在使用6!然而,9可能會支持CSS3,雖然我沒有看過它,因爲我現在不做網頁開發,也不使用IE。但你的問題是有點令人困惑,因爲你說你想支持IE,但不想調整你的CSS爲IE瀏覽器...你不能支持IE與外調整... – Kenneth 2011-03-17 20:17:18

+2

我說我不想要爲IE編碼不同的CSS。我真的很期待JavaScript兼容性庫或類似的東西,但是好吧..然後我們來調整。 – 2011-03-17 20:43:50

+1

如果你不想爲IE編寫不同的CSS,那麼不支持IE。 – 2011-03-18 05:05:55

回答

13

務實程序員的HTML5 and CSS3書有這樣的東西一些偉大的建議。對於列,它建議使用IE的Columnizer Plugin for jQuery

+0

pragprog提供免費的專欄章節http://media.pragprog.com/titles/bhh52e/multicolumn.pdf – dinnouti 2014-04-29 21:02:04

0

沒有看到你的代碼,我建議把每列放在一個div中。然後在爲IE添加樣式表後重新定義body標籤,併爲div添加樣式。

僅適用於IE:

<!--[if IE]> 
    **** your styles ****  
<![endif]--> 

你甚至可以把它更進一步,移動身體風格到它自己的樣式表,並加載你需要根據瀏覽器的樣式表。這取決於你想要走多遠。

1

嘗試你想要佈局爲表

的項目設置 display: inline-table;
1

CSS3提供任何轉向HTML節點的內容到任意數量的列的方式。有一些屬性用於控制列的數量及其寬度,相對高度(「填充」或內容在現有列中的分配方式),列之間的間隔,「規則」(分界線或邊框)等。

作爲起點,請參閱w3schools.com CSS3 Multiple Columns參考頁。

但是,像往常一樣,廣泛使用的瀏覽器中的IE瀏覽器不支持列CSS3屬性,IE10除外。

一個跨瀏覽器的解決方案是Columnizer jQuery Plugin