css - 如果 `li` 元素是一个 flexbox,那么项目符号不会显示?
问题描述
如果我们有一个无序列表,默认是有项目符号的:
<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; }
控制是否显示子弹。
解决方案
是的你是对的。使用 display:flex 你告诉 ul 它不再是 display:list 了。如果您希望使用 flex 显示项目符号,请使用伪元素:
ul li:before {
content: "";
position: absolute;
transform: translateY(-50%);
top: 50%;
border-radius: 50%;
left: 0;
margin-top: -7px; /* half bullet height */
width: 14px;
height: 14px;
background: #000;
}
推荐阅读
- angularjs - Angular File Saver 的 E2E 测试
- java - 我怎样才能解决错误'包R不存在'和'任务执行失败':app.compileDebugJavaWithJavac''错误在android studio中?
- sql - 在 redshift SQL 中生成分钟序列
- laravel - 服务器使用 laravel 队列内存不足
- ionic-framework - Ionic1 底部导航超过模态
- python - 继承类的属性名称更改。可能/不好的做法?
- restructuredtext - 当后面有空格以外的内容时,如何使 reStructuredText 斜体?
- azure - Azure Java 功能(应用服务计划)无法使用 VPN
- r - 如何在 Facet 模式下定位 R 平方和方程?
- python - Python YAML 转储指针引用