19

这些代码片段在语法上是否正确?我正在使用第一个代码片段来构建导航(在 ul 中嵌套标题标签)。如果它是错误的或者是一种不好的做法,那么缺点是什么。

<ul class="site-title left">
  <header>
   <li><h1>site title</h1></li>
  </header>                         
</ul>

<ul class="site-title left">
  <span>
   <li><h1>site-title</h1></li>
  </span>                           
</ul>
4

2 回答 2

23

根据规范ul 元素是:

ul 元素表示项目列表,其中项目的顺序并不重要——也就是说,更改顺序不会实质性地改变文档的含义。

列表的项是 ul 元素的 li 元素子节点。

所以 UL 元素的子元素必须li元素。

更具体地说,它在ul标签下说:

内容模型:

   Zero or more li elements.

但是,这样做是完全合法的:

<ul class="site-title left">
   <li><span><h1>site-title</h1></span></li>
</ul>
于 2013-06-24T06:00:05.670 回答
0

验证输出:1 错误

错误第 25 行,第 51 列:元素 h1 在此上下文中不允许作为元素 span 的子级。(抑制来自该子树的更多错误。)

            <li><span><h1 class="Tabellenkopf">Menü</h1></span></li>
于 2013-11-14T12:49:15.167 回答