截至2026年4月,Chrome/Edge 86+、Firefox 68+、Safari 15.4+(含iOS)稳定支持::marker的color和font-size;旧版Chrome 80、Safari 14及更早、所有IE版本均静默忽略;仅color必支持,font-size等字体属性在Chromium/Firefox中稳定,Safari 15.4+起支持,background/margin等全部无效。
能直接改列表符号颜色和大小,但不是所有浏览器都认,也不是所有 CSS 属性都能用——写对了没效果,大概率是兼容性或属性越界了。
哪些浏览器支持
的
和
截至 2026 年 4 月,稳定支持
+
的环境有:
Chrome / Edge 86+
Firefox 68+
Safari 15.4+(注意:iOS Safari 15.4 之前完全不支持)
旧版 Chrome(比如 80)、Safari 14 或更早、所有 IE 版本——
会被静默忽略,不报错也不渲染。你写
,在 iPhone 上根本没反应,就是这个原因。
只能用哪些 CSS 属性
它不是普通
伪元素
,规范强制限制了可用属性。目前可靠生效的只有:
立即学习
“
前端免费学习笔记(深入)
”;
(必支持)
、
、
(Chromium/Firefox 稳定,Safari 15.4+ 支持)
(仅限配合
,不能随意写
替换默认圆点)
(部分浏览器支持)
以下写法全部无效,且浏览器不会警告:
使用HTML,CSS,JavaScript开发Android应用程序 英文文字pdf版附源文件
如果你了解HTML,CSS和JavaScript,您已经拥有所需的工具开发Android应用程序。本动手本书展示了如何使用这些开源web标准设计和建造,可适应任何Android设备的应用程序 - 无需使用Java。您将学习如何创建一个在您选择的平台的Android友好的网络应用程序,然后转换与自由PhoneGap框架到一个原生的Android应用程序。了解为什么设备无关的移动应用是未来的潮流,并开始构建应用程序,提供更
下载
、
、
、
、
、
(设成
或
会被忽略)
为什么
还是没变色
常见失效原因不止兼容性一种:
父元素设置了
,而
默认继承它——你得加
或提高选择器权重,比如
用了
,会覆盖
的作用域
元素没触发
(比如被 Flex/Grid 父容器影响,或显式设了
)
某些 UA 样式(如 Chrome 的默认
样式)带
声明,优先级比你的规则高
验证是否生效,最直接的方式是打开 DevTools → 选中
→ 在 Styles 面板里看
规则有没有被划掉(strikethrough)。如果被划掉,说明不支持或被覆盖。
替代方案:当
不行时怎么稳住样式
需要兼容 Safari 15.3、Chrome 80 或更低版本时,必须放弃
,改用
+
:
关键点:
用
(不是
)适配 RTL 文本
防止符号上下偏移
想换方块或箭头?直接改
值:
、
、
需要响应式缩放?用
,别写
真正难搞的不是颜色或大小,而是符号和文字之间的间距——
和
属性都控制不了这个距离,UA 样式硬编码的。只有
才能用
和
精确调。
::marker::markercolorfont-sizecolorfont-size::markerli::marker { color: red; font-size: 1.2em; }::markercolorfont-sizefont-familyfont-weightcontentcounter()"→"text-shadowbackgroundborderpaddingmarginline-heightvertical-aligntext-aligndisplayblockinline-flexli::marker { color: red; }color::marker!importantul li::markerlist-style-image::markerdisplay: list-itemdisplay: blockulcolorli::marker::marker::markerlist-style: none::beforeli {
list-style: none;
position: relative;
padding-inline-start: 1.5em;
}
li::before {
content: "•";
color: #dc2626;
font-size: 1.1em;
position: absolute;
inset-inline-start: 0;
line-height: 1;
}inset-inline-startleftline-height: 1content"■""►""✓"font-size: 0.9em12px::markermarker::beforeinset-inline-startpadding-inline-start