2013-02-12 140 views
0

我想要以編程方式寫入頁面的鏈接數量是可變的。我寧願沒有一個長列表,但列出一個或多個列中的鏈接。然而,我不想強​​制一個具有特定列數的表...而是我想指定列寬(或讓每列自動適應最寬的元素)。如何製作調整大小以適應頁面寬度的HTML網格?

這是可以使用普通的HTML/CSS?作爲參考,我在C#(.NET2)中這樣做了,但是如果有人想在代碼中使用bash,那麼任何僞都是很好的 - 輸入就是我想要寫入頁面的數組/列表。

+1

我相信你可以使用一個_inlined_列表('ul'),每個'li'將有一個固定的寬度。 – 2013-02-12 12:56:59

+0

Hiya @John。您所描述的是您希望實現的一般概念,而Stackoverflow往往更多地幫助您調試代碼問題。你可以發佈你有什麼,所以我們可以建議它的方式? – Barney 2013-02-12 12:57:11

+0

查看CSS3列。 [Quirksmode鏈接](http://www.quirksmode.org/css/multicolumn.html):「測試2」中的行爲可能是您正在尋找的。 – hsan 2013-02-12 13:00:28

回答

2

您可以使用的內聯名單。考慮每個項目具有固定寬度的水平列表。

link1.....link2.....link3.....link4..... 
link5.....link6.....link7.....link8..... 
link9.....link10....link11.... 

依此類推。所有你需要的是讓你的清單(ul)內嵌,然後每個項目(li)具有固定的寬度。

下面是使用Twitter的引導工作演示(的概念是相同的):http://jsfiddle.net/FXkYr/

如果你不想使用Twitter的引導這裏有相關的HTML CSS &你將需要使用:

HTML:

<ul> 
    <li><a href="#">link1</a></li> 
    <li><a href="#">link2</a></li> 
    <li><a href="#">link3</a></li> 
</ul> 

CSS:

ul { 
    margin-left: 0; 
    list-style: none; 
} 

li { 
    width: 100px; 
    display: inline-block; 
    padding-left: 5px; 
    padding-right: 5px; 
    /* The following two lines is because IE is funny... */ 
    *display: inline; 
    *zoom: 1; 
} 
+0

我認爲這是一種更好的方式,但是您能否提供一個不依賴於外部文件的獨立示例......我必須通過使得理解示例更加困難的引導CSS。 – 2013-02-12 16:07:18

+0

你是對的@約翰,我剛剛更新了我的答案。 – 2013-02-12 19:56:45

1

這裏是你可以做的一種方式:http://jsfiddle.net/vYtBM/

有不同的方式加載後,你可以做到這一點,雖然是公平的。通過在每個LI內部具有錨標籤的無序列表將是另一種方式。

<div class="container"> 
    <a href="#">Link #1</a> 
    <a href="#">Link #2</a> 
    <a href="#">Link #3</a> 
    <a href="#">Link #4</a> 
    <a href="#">Link #5</a> 
    <a href="#">Link #6</a> 
    <a href="#">Link #7</a> 
    <a href="#">Link #8</a> 
    <a href="#">Link #9</a> 
</div> 

.container { 
    overflow: hidden; 
    width:960px; 
} 

.container a { 
    display: inline-block; 
    width: 440px; 
    padding: 10px; 
    background: #ccc; 
    margin: 0 20px 20px 0; 
    float: left; 
} 
+0

這看起來不錯,但我必須對元素寬度進行硬編碼。如果必須的話,我可以管理。 – 2013-02-12 13:07:13

+0

您可以將其設置爲百分比。我使用的填充和背景只是爲了說明佈局,但顯而易見,您可以修改所有這些以適應您的需求。 – 2013-02-12 13:08:12

+0

百分比示例:http://jsfiddle.net/vYtBM/1/ – estrar 2013-02-12 13:10:47

相關問題