在ul中嵌套除li之外的其他html标记
这些代码在语法上正确吗?我正在使用第一个代码块构建一个导航(将标题标签嵌套在ul中)。如果这是错误的,或者这是一个不好的做法,那么缺点是什么在ul中嵌套除li之外的其他html标记,html,Html,这些代码在语法上正确吗?我正在使用第一个代码块构建一个导航(将标题标签嵌套在ul中)。如果这是错误的,或者这是一个不好的做法,那么缺点是什么 <ul class="site-title left"> <header> <li><h1>site title</h1></li> </header> </ul> 网站名称 及 网站名称
<ul class="site-title left">
<header>
<li><h1>site title</h1></li>
</header>
</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>
- 网站名称
验证输出:1个错误
错误行25,第51列:在此上下文中,元素h1不允许作为元素span的子元素。(正在抑制来自此子树的进一步错误。)
门居
的缺点是,它在不同的浏览器中可能不起作用或看起来不一样。我建议:
另外:为了检查语法的有效性,是您的朋友。正如回答中所述,不,这是不正确的语法。我还认为它可能在语义上也不正确。如果是导航,那么站点标题就不属于导航。仅供参考,对于你想要的东西,最好的解决方案可能是简单地使用嵌套列表。在规范中你能找到令人惊讶的东西,是吗?我发现对于这类事情,这个版本更容易使用:在过去的几年里,一直在努力使规范更具可读性。最终目标是让开发人员和实现人员(如浏览器供应商)能够轻松访问此类信息:)感谢dev.w3.org链接,它们更具可读性,我只是习惯于阅读夜间报道:)我将更新链接。他们在规范方面做得很好,最新的规范非常清晰、简洁,而且可读。这不是他想要的!!!我想他想知道一个不是li的元素是否可以作为ul块的第一个子元素。而answare似乎不是
<ul class="site-title left">
<li><span><h1>site-title</h1></span></li>
</ul>
<li><span><h1 class="Tabellenkopf">Menü</h1></span></li>