2013-06-03 3 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 end] (http://validator.w3.org/check?uri=http%3A%2F%2Frichstyle.org%2Fcontact.html&charset=%28detect+ автоматически% 29 & doctype = Inline & group = 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

Спасибо :) Собственно, я думал, что

точно так же, как
Смежные вопросы