【问题标题】:Can you put li elements inside a div你能把 li 元素放在一个 div 里面吗
【发布时间】:2016-02-28 13:14:11
【问题描述】:

好的,所以我查看了 w3c 和博客,并没有找到关于为什么我不能执行以下 html 的论点:

<ul>
    <div><li>1</li></div>
    <div><li>2</li></div>
    <div><li>3</li></div>
</ul>

我凭直觉知道这看起来不对,但我找不到说明你不能这样做的参考。

【问题讨论】:

  • li 元素可以添加类,为什么需要 div?
  • 这个问题最初是在我需要向引导菜单添加滚动条时开始的。子菜单不会从菜单中弹出。我按照这个帖子css-tricks.com/popping-hidden-overflow 作为指导,但它提出了这个问题。我只是在寻找一些参考资料,说明你不能这样做,因为它对我有用。

标签: html twitter-bootstrap list menu


【解决方案1】:

没有。这是无效的 HTML。

允许内容:零个或多个&lt;li&gt; 元素,最终与 &lt;ol&gt; 和 &lt;ul&gt; 元素。

https://developer.mozilla.org/en-US/docs/Web/HTML/Element/ul

【讨论】:

  • 这仍然不是说我做不到。根据我在 w3c 文档中看到的内容,“DIV 和 SPAN 元素与 id 和 class 属性一起提供了一种向文档添加结构的通用机制。这些元素将内容定义为内联 (SPAN) 或块级(DIV),但不对内容强加其他表现形式。因此,作者可以将这些元素与样式表结合使用”(来源:w3.org/TR/html4/struct/global.html#edf-DIV),DIV 只是 HTML DOM 中的分隔符。
【解决方案2】:

如果您搜索“HTML Validator”,您可以快速运行一些代码以查看它是否有效。 div 标签作为 ul 标签的第一级子元素无效。无论您想要实现什么,都可以通过使用 CSS 设置 li 标签的样式来完成。

【讨论】:

  • 所以我确实上传了一个 html 页面,但它确实给出了错误,并为我指明了正确的方向。
猜你喜欢
  • 2019-06-08
  • 2013-04-19
  • 2016-07-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-12-21
  • 2015-09-03
  • 2018-01-13
相关资源
最近更新 更多