将其他html标签嵌套在ul中除了li之外

Mon*_*ffy 15 html html5

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

<ul class="site-title left">
  <header>
   <li><h1>site title</h1></li>
  </header>                         
</ul>
Run Code Online (Sandbox Code Playgroud)

<ul class="site-title left">
  <span>
   <li><h1>site-title</h1></li>
  </span>                           
</ul>
Run Code Online (Sandbox Code Playgroud)

Ben*_*aum 21

没有

根据规范,ul元素是:

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

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

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

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

内容模型:

   Zero or more li elements.
Run Code Online (Sandbox Code Playgroud)

但是,这是完全合法的:

<ul class="site-title left">
   <li><span><h1>site-title</h1></span></li>
</ul>
Run Code Online (Sandbox Code Playgroud)

  • 你能在规格中找到惊人的东西,嗯?我觉得这个版本更易于处理这类事情:http://dev.w3.org/html5/markup/ul.html (2认同)
  • 在过去几年中,一直在努力使规范更具可读性.最终目标是让开发人员和实现者(如浏览器供应商)能够轻松访问这类信息:)感谢dev.w3.org链接,它们更具可读性,我只是习惯于阅读夜莺: )我会更新链接. (2认同)