2012-09-23 43 views
1

我目前正在將MediaWiki安裝從古老的1.6.10升級到1.19.2。其中一個變化是新的MediaWiki使用<!DOCTYPE html>,它改變了佈局。在HTML5中使用HTML表格進行佈局

現在其中一個MediaWiki擴展使用表格進行佈局。例如:

<!DOCTYPE html> 
<table> 
<tr style="background-color:lime;"> 
    <td><img src="pixel.gif"></td> 
</tr> 
</table> 

現在即使pixel.gif只有1x1像素大,石灰矩形使用3x22像素。我的意圖是,該行應該只有1個像素高。有沒有簡單的方法使用<table>,還是我必須切換到使用<div> s?

+0

你想用表來堅持爲佈局爲什麼,利弊過權衡利弊 - 大時間。 –

+0

感謝您的升級。 :)看MediaWiki wiki運行十年前的代碼總是很痛苦。 – Nemo

回答

1

添加這個CSS:td { font-size:0;padding:0 }

這有什麼好做表真的。你會遇到與div相同的問題。所以同樣如此,請使用div { font-size:0; }。更現實的是,你需要確定你想要的樣式與一個類的樣式。例如div.myimagecontainer { font-size:0; }

1

表格是表格和html,並且與HTML5沒有區別,但是當然,表格不應該用於佈局。

0

如果必須使用<table>佈局然後確保你正確設置角色屬性<table role="presentation">按照W3C的HTML5推薦:

表不應該被用來作爲佈局輔助。歷史上,許多作者都使用HTML中的表格作爲控制其頁面佈局的一種方式,使得難以從這些文檔中提取表格數據。特別是, 可訪問性工具的用戶(如屏幕閱讀器)爲 ,可能會發現導航頁面使用 進行佈局很困難。如果要使用表格進行佈局,則必須標記 屬性role =「presentation」,以便用戶代理正確地將 表示爲輔助技術的表格,並將作者的意圖正確傳達給希望使用的工具的 從文檔中提取表格數據 。

http://www.w3.org/TR/html5/tabular-data.html#the-table-element