Можно ли иметь `<a>` внутри другого `<a>`? - PullRequest
18 голосов
/ 23 октября 2011

Если бы у меня была ссылка на другую страницу, и внутри нее была вставлена ​​еще одна ссылка, это было бы нормально?Разрешено ли это в HTML5, и если да, то какие браузеры его поддерживают?

При попытке в Chrome 14.0.835.202 я вижу, что текст слева становится связанным, за которым следует ссылка #1, но остальные нене связаны.

Пример:

<p>
 <a href="download?file=2">Example file.txt</a>
 [
  <a href="revision?file=2&id=8">This is an example revision that fixes bug 
   <a href="bug?file=2&id=1">#1</a>. 
   Version number updated.
  </a>
 ]
</p>

Ответы [ 4 ]

28 голосов
/ 23 октября 2011

Согласно спецификации W3C для ссылок HTML5 : Нет.

Модель содержимого:
Прозрачный , ноне должно быть интерактивного контента потомка.

8 голосов
/ 23 октября 2011

Согласно спецификации W3C для ссылок HTML4 : Нет.

Ссылки и якоря, определенные элементом A, не должны быть вложенными;элемент A не должен содержать никаких других элементов A.

Или, в HTML5 spec :

Ссылки являются концептуальной конструкцией, созданной, area и link элементы, представляющие связь между двумя ресурсами.

7 голосов
/ 23 октября 2011

Нет, вы не можете вкладывать a элементы в HTML 4 или 5. Ключевая часть спецификации, которая поясняет это, состоит в том, что когда a является ссылкой, это интерактивный контент , имодель содержимого a имеет вид

Прозрачный , но не должно быть интерактивного содержимого потомок

Ссылки

5 голосов
/ 23 октября 2011

Даже в HTML5 это не разрешено ...

Смотрите здесь: Черновик HTML5 на W3C

Элемент a может быть обернут вокруг целых абзацевсписки, таблицы и т. д., даже целые разделы, если в них нет интерактивного содержимого (например, кнопок или других ссылок).

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...