2012-01-20 80 views
1

我的目標是將列表動態列入兩列,無論列表的長度如何。如果這段代碼看起來不錯,或者有更好或更簡潔的方法來實現這種事情,我真的很想聽聽那些更瞭解JavaScript和jQuery的人。有沒有更好或更簡潔的方法來做到這一點?

謝謝!

http://jsfiddle.net/mkimitch/ZEL5x/12/

+0

http://codereview.stackexchange.com/ –

+0

CSS3支持適當的立柱支撐:http://www.quirksmode.org/css/multicolumn.html –

+0

威爾jQuery能夠幫助非CSS3瀏覽器正確顯示代碼?有點像使用':nth-​​child'選擇器時的工作原理? –

回答

2

爲什麼不把它們飄浮?

li { 
    line-height: 1.2em; 
    position: relative; 
    float: left; 
    width: 50%; 
} 

No javascript needed。 除非我失去了一些東西...

+1

除非我錯過了一些關於具有浮動'li'節點的'ul'標籤的特殊屬性,一定要在容器元素上貼上一個好的'clearfix'。 http://stackoverflow.com/a/1633170/304588 –

+0

飄來'li'節點會產生像這樣的列: '1 2' '3 4' '5 6' 儘管我努力讓它顯示像這樣: '1 4' '2 5' '3 6' –

+0

+1好點.. – ori

1

我建議不要使用JavaScript的。你可以用純CSS來做到這一點。

如果用戶禁用了JavaScript,您的代碼將無法運行。

樣品

ul.twocolumn { 
width: 400px; 
} 

ul.twocolumn li { 
width: 190px; 
float: left; 
} 

Updated jsFiddle

+0

是的,但你看到列是不是按字母順序,至少是垂直的?那正是我想要實現的。如果JavaScript被禁用,它將顯示爲一個簡單的列表,但沒有任何內容會被打破。 –

相關問題