css - 如何创建 "stronger"元素的 css 类?

标签 css

我有一个关于 CSS 类和元素的问题。假设我有类似 form input[type=submit] {...}

的东西

现在我想在一个页面上添加一个提交按钮,但外观不同。所以我创建了一个类,例如 form .button 并将 class="button" 添加到提交按钮。现在的问题是 form input[type=submit] {...} 的设置似乎更强大,因此具有类的按钮看起来相同。我该如何解决这个问题?

最佳答案

你应该使用:

form input[type=submit] {
    border: 3px solid red
}
form input.button {
    border: 3px solid blue
}

参见: http://jsfiddle.net/5pbbD/

这个问题全都与 CSS 特异性有关。参见 this articlethe CSS spec .

  • form input[type=submit]form .button 具有更高的特异性,所以这就是您遇到此问题的原因。
  • 我已将第二个选择器 (form .button) 更改为 form input.button,这已经足够具体了。我的回答中的两个选择器实际上具有相同的特异性,因此归结为它们被定义的顺序。

关于css - 如何创建 "stronger"元素的 css 类?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6536264/

相关文章:

css - 将属性应用于类但不应用于其 :before and :after

jquery - Flexslider 标题水平折叠

javascript - Firefox:在地址栏中强制全部大写

html - 当侧边栏超过屏幕高度时,如何使这个粘性页脚粘在布局的底部?

jquery - CSS:将任意大小的图像图标对齐在框的中间

javascript - 实时搜索(键入时动态过滤结果)- Bootstrap、jQuery

javascript - 鼠标悬停时显示弹出窗口的正确偏移计算

css - 如何使 ionic 导航栏上的图像在溢出时仍然可见

html - 如何使一个div在顶部和底部接触

html - 在移动期间删除面板页脚中的空间