①::marker 是 CSS 中新出的一种伪元素,用来匹配列表项中的 “标记盒子”,并可以设置标记盒子里面的内容以及与字符显示相关的 UI;
②可以匹配任意设置了 display:list-item 的元素或伪元素;
③如果是普通的 HTML 标签元素,例如元素想要使用::marker 伪元素,可以设置 display 为 list-item;
④和::first-letter 伪元素、::first-line 伪元素类似,::marker 伪元素仅支持部分的 CSS 属性:
所有 font 相关的属性,例如 font-size,font-family 等,但是不包括 line-height 属性;
white-space 属性;
text-shadow 属性(仅 Chrome 支持),其他 text 相关属性并不支持;
letter-spacing 和 word-spacing 属性(仅 Chrome 支持);
color 属性;
text-combine-upright、unicode-bidi 和 direction 属性,这几个属性与文字排版方位相关;
content 属性,Safari 目前不支持;
所有动画和过渡相关的 CSS 属性,也就是 animation 和 transition 属性;
⑤::before::marker 和::after::marker 选择器都是合法的,只需要::before 和::after 是列表项,也就是 display 计算值是 list-item;
(参考:www.zhangxinxu.com/wordpress/2…