我是否应该在<a> or an </a> <a> inside an <i>?

时间:2017-03-07 22:38:11

标签: html syntax

I am using an anchor tag, and the text that is displayed in the hyperlink is supposed to be italicized. When using the anchor, do I use the italics tags on the text itself or do I italicize the entire anchor tag? Which is the correct syntax?

Example:

<a href="http://www.google.com/"><i>Google</i></a>

Or:

<i><a href="http://www.google.com/">Google</a></i>

2 个答案:

答案 0 :(得分:3)

两者都完全有效。请参阅HTML5 Specification,其中解释了标记的语义和用法。在a element

  

4.5.1 Show-GoCDOutput元素

     

[...]

     

可以使用此元素的上下文

     

预计会phrasing content

可以使用元素的上下文是元素有效的地方,可以使用 1 。短语内容在规范中定义如下:

  

短语内容是文档的文本,以及在段落内标记该文本的元素。短语内容的运行形式为paragraphs

     
a

因此,措辞内容是指标记文本的文档或元素的文本,例如a abbr area (if it is a descendant of a map element) audio b bdi bdo br button canvas cite code data datalist del dfn em embed i iframe img input ins kbd keygen label map mark math meter noscript object output progress q ruby s samp script select small span strong sub sup svg template textarea time u var video wbr text 表示超链接或a表示斜体。以上列出的任何元素均适用。如果你看一下i element

  

4.5.17 i元素

     

[...]

     

可以使用此元素的上下文

     

预计会phrasing content

从规范中可以看出,ia可以在相同的上下文中使用,即语境。因此,我们可以得出结论:

  • i元素中的a元素很好,因为i元素可用于措辞内容。 a是短语内容,因此有效。
  • i元素中的i元素很好,因为a元素可用于措辞内容。 a是短语内容,因此它有效 2

除了有效性之外,您选择哪种方式完全取决于您,一种方式并不比另一方更有效。

1 通常会确定元素是否为block-level or inline,但HTML5已删除这些类型以支持更多描述性类别,请阅读更多at MDN

2 请注意,即使a是短语内容, 也不能将a嵌套在另一个a内。这是因为a的{​​{3}}对content model执行。其他限制可能适用于其他元素。

答案 1 :(得分:0)

两者都有效。我亲自使用:

<a href="http://www.google.com/"><i>Google</i></a>

因为这意味着<a>标签中的文字是特殊的。