2013-02-13 118 views
9

我有一個固定高度爲50px,寬度爲100%的表格。製作td填充表格寬度

那個表我有兩個div內,在同一行,像這樣:

<table> 
    <tr> 
    <td> 
     <div id="1"></div> 
    </td> 
    <td> 
     <div id="2"></div> 
    </td> 
    </tr> 
</table> 

第一div有float:left,而第二個float:right

所以這個表是100%的頁面。我想DIV2來包裝它的內容,並讓DIV2對準這樣的權利DIV1,以填補剩餘的空間:

+--------------------------------------------------------------+ 
| [ DIV 1   (Expands)  ][ DIV 2 AND ITS CONTENTS ] | 
+--------------------------------------------------------------+ 

和我目前得到的時候DIV1比全行少的內容:

+--------------------------------------------------------------+ 
| [ DIV 1 ][ DIV 2 ]           | 
+--------------------------------------------------------------+ 

如果沒有表格,我可以直接將它左右移動,但是當它們「聚在一起」時,它們會彼此纏繞而不是彼此相鄰。

編輯:我添加了一個新的jsfiddle here。 這是工作的例子。 嘗試從左側div中除去一個鏈接,然後查看結果。第二個div應該停留在最右側。我希望我解釋一下自己。

+2

請您提供一些代碼?並可能一個jsfiddle,所以我們可以更好地協助你 – 2013-02-13 20:49:58

+0

你不需要表格http://jsfiddle.net/WqsTg/ – 2013-02-13 20:56:29

+0

我正在jsfiddle,現在完成了,看到編輯。 – Twinone 2013-02-13 21:03:14

回答

23

使用td的「colspan」屬性。例如:

<td colspan=75%> info </td> 
+1

我不想要一個固定的寬度。我想要的是正確的div有一些寬度,左邊的div適應它的寬度來填充表格的其餘部分,而不是正確的div移動。 – Twinone 2013-02-13 21:05:34

+1

這個答案不正確,不符合HTML標準。 ['​​'](https://developer.mozilla.org/en/docs/Web/HTML/Element/td)'colspan': 此屬性包含一個非負整數值,表示單元格的列數延伸。它的默認值是1.「雖然HTML5直接在HTML中不再使用設置寬度,但請查看[''](https://developer.mozilla.org/en-US/docs/Web/HTML/Element/col)。 – 2017-06-02 08:26:51

0

首先,您的表似乎並未設置爲頁面的全部寬度。您想要將寬度樣式或寬度屬性添加到標記中。

接下來只需在右側「div」(或更準確地說<TD>)上設置固定寬度,第一個將填充剩餘空間。

正如其他人指出的那樣,封裝表似乎沒有必要。