2013-08-29 127 views
0

我試圖設置表中列的最大寬度(也就是說,我希望該列中的所有單元格具有相同的最大寬度),但是我的初始嘗試失敗:表列的最大寬度

<table border="1"> 
    <tr><td style="max-width:100px">a bunch of text here, it should get wrapped</td></tr> 
    <tr><td>a bunch of text here, it should get wrapped</td></tr> 
</table> 

(也在http://jsfiddle.net/Le6H6/4/

我期待的是設置的最大寬度爲一個單元應該自動設置爲它在同一個列中的所有單元格。但不知何故,第二行的單元格覆蓋了我設置的最大寬度,並且兩個單元格現在都比此寬度更寬。

我有2個問題:
1)爲什麼會發生這種情況?
2)我知道,設置該列中每個單元格的最大寬度(單獨或通過適當的CSS規則)將達到我想要的。但是,是否還有一種方法可以設置列的最大寬度,而不必爲每個單元設置它?

+0

目前還不清楚你要問什麼,正如你收到的許多不正確的答案所證明的。請考慮用更容易理解的方式來重新描述你的問題。 – htxryan

+0

@RyanHenderson我不是很同意,但無論如何我編輯了這個問題 – aditsu

回答

0

你不能那樣做,因爲max-width可以應用於單個單元格。所以ü可以使用<div>做到這一點尤其適用於細胞或使之成爲<table>

試試這個:

<table border="1" style="max-width:100px;"> 
    <tr> 
     <td>a bunch of text here, it should get wrapped</td> 
    </tr> 
    <tr> 
     <td>a bunch of text here, it should get wrapped</td> 
    </tr> 
</table> 

無論是使用CSS

tr td { max-with :100px; } 
+0

有什麼區別? – aditsu

+0

有時在2或3內聯樣式完成。那麼分號是必要的。 m編輯它.. – Rahul

+0

除了在這裏,我們只有1個CSS屬性,分號什麼都不做 – aditsu

2

1)這是發生,因爲這是怎麼了HTML表格的工作。該表爲最大單元寬度重新調整大小。如果你仔細想想,這是合乎邏輯的。

2)有辦法解決這個問題,但沒有什麼能滿足您爲單個單元添加單一樣式的限制。

對不起,如果它不是你正在尋找的答案。 :/

+0

1)你有更多的細節(例如標準摘錄)嗎?這對我來說沒有多大意義。 2)如果不是td,那麼我希望得到像col元素那樣的東西,但它似乎不起作用 – aditsu

+0

1)不,我很抱歉。我從經驗中知道它是如何表現的,但我不能引用HTML規範。 2)什麼迫使你進入這個約束?爲什麼不能使用此問題上發佈的幾種解決方法中的任何一種? – htxryan

+0

1)我知道這樣做時,我沒有寬度限制(我認爲這是正常的),但我希望它尊重一個單元格的最大寬度。我會看看是否有更多的信息出現..我想我不想花太多的時間來挖掘規範。 2)沒有什麼是強迫我的,我只是希望有這個選擇。我最終使用了一個css規則(對於選定表格中的所有單元格)。 – aditsu