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

合并相似CSS选择器后代码失效,请问我遗漏了什么?

问题分析与解决

你的合并写法存在CSS选择器语法错误,导致样式无法生效,具体问题和修正方案如下:

错误原因

你写的form[id^="reply_form-c"]r1.odgovor是无效的CSS选择器:

  • [id^="reply_form-c"]是属性起始匹配选择器,但后面直接追加的r1不属于合法的选择器语法——它是ID属性值的一部分,不能单独放在属性选择器之外。
  • 同理,div[id^="cmtforms-c"]r1也犯了同样的错误。

正确的合并写法

根据你原始的ID规则(reply_form-cNr1、cmtforms-cNr1,其中N是数字1-4),可以用属性起始匹配+属性结尾匹配的组合选择器来精准匹配:

form[id^="reply_form-c"][id$="r1"].odgovor div[id^="cmtforms-c"][id$="r1"] input {
  color: red;
}

选择器说明

  • [id^="reply_form-c"]:匹配ID以reply_form-c开头的form元素
  • [id$="r1"]:进一步限定ID以r1结尾的form元素,避免误匹配其他类似ID(比如reply_form-c1r2)
  • .odgovor:保留原有的类选择器,确保匹配的form包含该类
  • 后面的div选择器逻辑完全一致

如果你的场景中不存在其他以reply_form-c开头但不以r1结尾的元素,也可以简化为更简洁的写法:

form[id^="reply_form-c"].odgovor div[id^="cmtforms-c"] input {
  color: red;
}

这种写法会匹配所有ID以reply_form-c开头且带有odgovor类的form,以及其后代中ID以cmtforms-c开头的div下的input元素,同样能覆盖你原始的4段样式。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.01 07:22:53