【发布时间】:2021-03-31 13:01:46
【问题描述】:
如果我们有无序列表,默认是有项目符号的:
<ul>
<li>hello</li>
<li>world</li>
</ul>
但是,如果我们将其设为 display: flex,则项目符号将不再显示:
li { display: flex }
<ul>
<li>hello</li>
<li>world</li>
</ul>
CSS中是否有这样的规则,因为它可能仍然显示项目符号但让
ul { list-style-type: none; }
控制是否显示子弹。
【问题讨论】:
-
默认显示是
list-item,如果你改变它,那么它就不再是一个列表项(它发生在所有值inline;inline-block等) -
元素的性质由CSS定义(默认显示来自用户代理CSS)
-
如果您将
li设置为显示为弹性项目,您将无法设置list-style-type,因为它不再是list-item,这是li的默认值。 -
@T.J.Crowder 您将 nature 视为语义,但我将其视为演示。我指的不是语义,我指的是根据规范使用用户代理 CSS 定义的默认行为:html.spec.whatwg.org/multipage/rendering.html#rendering
-
哇。 JavaScript 版税在 CSS 中访问我们。荣誉@T.J.Crowder。你的回答让我经历了很多困难的情况。谢谢:-)