Мой google fu не может поцарапать этот вечер. Каковы действительные элементы html, если они есть, которые могут содержаться в теге <a>
?
<a> ?? </a>
Мой google fu не может поцарапать этот вечер. Каковы действительные элементы html, если они есть, которые могут содержаться в теге <a>
?
<a> ?? </a>
Встроенные элементы (a, span, strong, em
среди других) могут содержать другие встроенные элементы и текстовые узлы. Якорь может содержать диапазон, который может содержать текст node.
Как правило, элементы уровня блока могут содержат встроенные элементы и другие элементы уровня блока. В общем, встроенные элементы могут содержать только данные и другие встроенные элементы. В это структурное различие идея создания блочных элементов "большие" структуры, чем встроенные элементы.
От http://www.w3.org/TR/html401/struct/global.html
Как отмечено в других ответах, вы не можете вставить a
в a
.
Начиная с HTML 5, <a>
может содержать не только (действительные) встроенные элементы, но также элементы блоков и т.д.
Тег <a>
может содержать любой встроенный элемент, помимо другого тега <a>
.
Он может содержать простые текстовые и встроенные элементы. Ниже перечислены следующие элементы:
TT | I | B | BIG | SMALL | EM | STRONG | DFN | CODE | SAMP |
KBD | VAR | CITE | ABBR | ACRONYM | A | IMG | OBJECT | BR |
SCRIPT | MAP | Q | SUB | SUP | SPAN | BDO
Но A
не может быть вложен в другой A
, а вложенный SCRIPT
не делает senese.
Смотрите раздел % inline гиперссылки, чтобы облегчить вам расширение.
Якорный тег является встроенным элементом, поэтому он может содержать другие встроенные элементы (кроме других тегов привязки).
Если вы хотите поместить элемент блока внутри привязки, вы должны использовать встроенный элемент и превратить его в элемент блока с помощью CSS вместе с самим тегом привязки.
Пример:
<a href="page.html" class="blocklink"><span>eat me</span></a>
CSS
.blocklink { display: block; }
.blocklink span { display: block; }