【问题标题】:How to let css selector exclude an element?如何让css选择器排除一个元素?
【发布时间】:2010-03-23 02:21:24
【问题描述】:

例如,我有这样的 css 样式:

    input.validation-passed {border: 1px solid #00CC00; color : #000;}

我使用的 javascript 验证框架将为每个输入标签注入 class="validation-passed" 。对于像 <input type='text' /> ... 这样的元素,这是可以的,但是对于 <input type='button' /> ,我希望这不是申请了,我该怎么办?

【问题讨论】:

    标签: javascript html css


    【解决方案1】:
    .validation-passed:not(input[type="button"]) {color:red;}
    

    【讨论】:

    • 提一下这是 CSS3 语法,可能并非所有浏览器都完全支持,这可能会有所帮助。
    【解决方案2】:

    如果不需要支持IE6,可以使用属性选择器:

    input[type="text"].validation-passed {border: 1px solid #00CC00; color : #000;}
    

    【讨论】:

    • +1 反正我知道没有 IE6 CSS 唯一的方法来完成这个,担心它没有意义。
    • 谢谢,但我需要支持IE6!
    【解决方案3】:

    我不认为你可以。但是您可以注入一小段 javascript 来解析您的输入并将 text-validation-passed 类添加到您的所有 text 输入中,并使用 validation-passed 类(或者如果您不需要它,则从按钮输入中删除该类)。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2016-11-30
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-06-23
      • 2013-06-04
      相关资源
      最近更新 更多