2017-01-23 51 views
1

我有一個網頁http://bikepaths.com/Armstead/GBA1.html,我已經建立了一個HTML表格來排列文本和圖片,使用rowspan排列,這樣第一列在高圖片上方有少量文本,而第二列在上方有一個高圖片少量的文字。有沒有解決方法可以讓MS瀏覽器中的rowspan工作?

<table> 
    <tr> 
     <td>George's first memory of note was ... </td> 
     <td rowspan="2"><img src="image/IM-GBA1885.jpg" height="440" width="280"></td> 
    </tr> 
    <tr> 
     <td rowspan="2"><img src="image/IM-JBA4-GBA.jpg" height="400" width="280"> </td> 
    </tr> 
    <tr> 
     <td>Also he recalled watching his half brother, James Benson Armstead IV <i>[on left]</i>, go through .... </td> 
    </tr> 
</table><br> 

所以3行,每個圖片單元上的rowspan = 2。 這在Firefox和Chrome中都可以顯示,但我嘗試過的MS瀏覽器(IE11和Edge)都顯示爲一個簡單的2行表格,在每個文本單元格上方和下方留下大量空間。

我知道MS應該禁止創建瀏覽器,直到他們知道'遵循標準'的含義是什麼,但在這種情況發生之前,是否有一種解決方法可以在IE和Edge中正確顯示這種顯示?

+0

你可以發佈你正在使用的HTML嗎? – Pavlo

+0

我已將它添加到問題中。 – Pavlo

+4

是的,有一個解決方法。停止使用表格進行頁面佈局:) –

回答

1
<table style="table-layout:fixed"> 
<tr><td></td><td></td><td></td></tr> 
<tr><td colspan="3">three colunms width</td></tr> 
<tr><td colspan="2">two columns width</td><td>one column</td></tr> 
<tr><td colspan="1">one column</td><td colspan="1">one column</td><td colspan="1">one column</td></tr> 
</table> 

說明該跨度屬性值或每行中td元素的數量的總和的總和等於由所述第一確定td元素的數量(隱藏,由於TD細胞是空的)行。

轉到validator.w3.org/nu並將您的標記複製並粘貼到直接輸入表單中,然後按驗證按鈕.... w3驗證程序可以檢測td元素的數量和colspan的總數屬性不匹配。

+0

我的問題是用rowspan,而不是colspan,但我調整了你的解決方案。只有兩列,我不能讓圖片重疊(即,第1列圖片的頂部與第2列圖片的底部在第2行)。但是,當我在所有三行中添加了空白的第三列時,我發現有輕微的重疊。因此,通過使最後一列中的第二項爲一系列
 項目,我可以控制第二行圖片的重疊量。有點混亂,但它的作品。 – LitterWalker