html5语义-span标签vs p标签



使用span标记的方式在语义上正确吗?

<div itemscope itemtype ="http://schema.org/Movie">
  <h1 itemprop="name">Avatar</h1>
  <span>Director: <span itemprop="director">James Cameron</span> (born August 16, 1954)</span>
  <span itemprop="genre">Science fiction</span>
  <a href="../movies/avatar-theatrical-trailer.html" itemprop="trailer">Trailer</a>
</div>

导演和类型应该放在p元素里面吗?应该用p标记替换开头的div吗?把导演和类型放在一个跨度标签里似乎是不对的。

我正在学习html,在schema.org文档中发现了这段代码。如果有人能帮我澄清一些事情,我将非常感激。非常感谢。

根据http://validator.w3.org/check,此代码符合HTML5:

<!DOCTYPE html>
<html>
<head>
<title>Title</title>
</head>
<body>
<div itemscope itemtype ="http://schema.org/Movie">
  <h1 itemprop="name">Avatar</h1>
  <span>Director: <span itemprop="director">James Cameron</span> (born August 16, 1954)</span>
  <span itemprop="genre">Science fiction</span>
  <a href="../movies/avatar-theatrical-trailer.html" itemprop="trailer">Trailer</a>
</div>
</body>
</html>

编辑:说到语义,span标记"本身没有任何意义,但当与全局属性一起使用时会很有用"(请参阅规范)。使用无属性的span标记是没有意义的,实际上,这里建议使用p标记。

默认情况下,span在HTML中没有真正的语义。这只是一种将内联内容与其他内联内容隔离开来的方法。

div没有任何真正的语义意义。divspan都是通用容器。

如果您想在示例中添加一些语义,我建议您使用无序列表或定义列表。

所有这些,是你所说的不正确吗?不,不一定——尤其是如果内容本身是不言自明的。

最新更新