You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何为多个#id元素设置::before伪元素?CSS多ID共用伪类写法咨询

你之前的写法不生效是因为CSS逗号分隔的选择器会独立解析,#ps4, #ps3 ::before实际匹配的是两类元素:所有id="ps4"的元素本身、所有id="ps3"元素的::before伪元素,自然达不到预期效果。

正确实现方式

你需要给每个ID选择器都单独加上::before伪元素标识,写法如下:

#ps4::before, #ps3::before {
  /* 此处写入共用的样式逻辑 */
}

注意:你原有代码里#ps4 ::before(ID和伪元素之间有空格)匹配的是#ps4的所有子元素的::before伪元素,如果你需要给#ps4元素本身加伪元素,要去掉中间的空格。

如果后续还有更多同需求的元素,更推荐的简化方案是给这类元素加一个统一的公共类名,比如device-card,之后直接写.device-card::before就可以批量覆盖所有同类元素,不用每次新增ID都修改选择器列表,维护更便捷。

内容的提问来源于stack exchange,提问作者LegoLiam

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.02 03:45:03