具有 href 属性的 span 标签是否有效?

Is a span tag with a href attribute considered valid?

这是一个例子:

<span href="http://www.example.com">

不过。 W3C Validator 说:

Error: Attribute href not allowed on element span at this point.

所以你们认为它有效吗?任何帮助将不胜感激。

Span tag does not use any other attributes but global 个。

span 没有逻辑理由包含 href,href 是 <a> 标签的唯一属性。

如果您需要在 span 中保留 url,您应该考虑使用 HTML5 数据属性。例如:

<span data-url="http://www.example.com">

阅读有关数据属性的更多信息here

嗯,很清楚了……

但是如果你希望它表现得像 link,你可以将它包裹在一个锚标记中,例如

<a href="http://www.example.com"><span>My span is a link !</span></a>

或者反过来。

正如 W3 Validator 告诉您的那样,href 属性在 span 元素上无效。

不过,这是严格意义上的。 HTML 是一种非常灵活的脚本语言,允许您添加许多未在该语言中定义的内容,然后这些内容将被简单地忽略。

因此,根据这一点,在 span 元素上添加 href 属性是有效的,但不会作为真正的 href 属性使用,只会被忽略。然后由您提供机制(主要通过 JavaScript)来利用该属性。

程序员从 HTML 的旧时代就开始使用这个 fact/feature。但是,现在它已成为使用 data 属性的标准,因此建议您改用它。像这样:

<span data-url="http://www.example.com"></span>