为何CSS ::marker伪元素仅支持部分CSS属性而非全部?
为什么CSS ::marker伪元素不能支持全部CSS属性?
::marker是CSS规范专门为列表项标记(比如有序列表的数字、无序列表的圆点)设计的伪元素,它的渲染规则和普通元素/其他伪元素存在本质区别:
- 它属于原子行内级盒子,布局上被限制在固定的渲染区域,所以像
display(改变盒类型)、background(依赖完整盒模型区域)这类涉及布局逻辑的属性无法生效。 - 规范只开放了和标记文本样式、内容相关的属性支持,比如你提到的
font-size、color、content,还有font-family、text-transform这类,这些都是调整标记外观和内容的核心需求。
说白了,::marker的定位就是“专门处理列表标记的样式”,不是通用的伪元素,规范从设计上就限制了它的属性支持范围,避免破坏列表标记的默认布局逻辑。
内容的提问来源于stack exchange,提问作者Helping Hands
相关产品推荐
相关产品推荐

