2013-06-03 52 views
0

我有一個奇怪的問題。我試圖將<address>標記設置爲表格單元格,但瀏覽器(Chrome,Chromium和Firefox)堅持將其顯示爲塊!將表格地址標籤作爲表格單元格

下面的代碼:

<!DOCTYPE html> 
<html lang="en"> 
<head> 
<meta charset="utf-8" /> 
<title>Address Test</title> 
<style type="text/css"> 

form {display:table;} 
p {display:table-row;} 
label,a,input,output,address,a {display:table-cell;border:1pt solid silver;} 

</style> 
</head> 
<body> 

<form> 
<p> 
    <label>Tel:</label> 
    <a href="tel:+12345">+12345</a> 
</p> 
<p> 
    <label>Fax:</label> 
    <a href="tel:+12345">+12345</a> 
</p> 
<p> 
    <label>Address:</label> 
    <address>bla bla bla</address> 
</p> 
<p> 
    <label>E-Mail:</label> 
    <a href="mailto:[email protected]">[email protected]</a> 
</p> 
</form> 

</body> 
</html> 

...這裏是輸出:

http://richstyle.org/contact.html

任何幫助嗎?

+0

你爲什麼不使用'table'元素這個表格數據?您的代碼使用'label'作爲規範:'label'元素爲控件(表單域)指定標籤,而不僅僅是指定任何元素。 –

+0

'

+0

這是你的問題:[範圍內沒有p元素,但看到ap結束標記](http://validator.w3.org/check?uri=http%3A%2F%2Frichstyle.org%2Fcontact.html&charset=%28detect+自動%29&doctype =內聯&組= 0)(正如詹姆斯的回答所解釋的) – Quentin

回答

3

address元素不能包含在p元素中。 Chrome和Firefox呈現爲標記:

<p> 
    <label></label> 
</p> 
<address></address> 

隨着HTML specification suggests,分頻器將超過段落標記更合適。

<div> 
    <label>Address:</label> 
    <address>bla bla bla</address> 
</div> 
div {display:table-row;} 
+0

刪除我的答案。不知道它會與div一起工作。 –

+0

謝謝:)實際上,我曾經認爲

就像