css - 覆盖引导类属性

标签 css twitter-bootstrap-3

我们正在使用 Bootstrap ,想要覆盖 Bootstrap 类属性之一,如下所示。我正在使用 Asp.net MVC。

CSS

Boot strap 
Panel-heading 
{ 
 Color : Red  
}    

Application CSS 
Heading 
{ 
Color : Green 
} 

HTML 页面

链接 Bootstrap
链接应用程序 CSS

问题:仍然是 div 颜色为红色。

可以帮助我如何在不使用 ! 的情况下覆盖 boorstrap 类的颜色。

最佳答案

发生这种情况是因为当您的应用程序正在加载时,您首先加载 Bootstrap 文件,然后是您的应用程序 css 文件,这实际上是加载它的正确方法。 但是根据 css 规则,如果您在具有相同样式的元素上应用两个类,那么浏览器将选择它首先找到的那个。 它不取决于您在元素上应用它的顺序,这意味着

<div class = "Panel-heading Heading"></div>
<div class = "Heading Panel-heading"></div>

改变这个顺序并不重要,重要的是浏览器首先加载哪个 css 文件。

覆盖它的一种方法是使用 !important,这不是一个好的做法。

在您的应用程序中使用同名类也不是一个优雅的解决方案,因为在您的应用程序上工作的新开发人员可能会感到困惑,因为他不希望 native Bootstrap 类以不同的方式工作。

另一种出路是增加自定义类的特异性。

应用程序 CSS

div.Panel-Heading.Heading { Color : Green }

这将通过赋予它更高的优先级来增加你的类的特异性,并将覆盖之前的类

您可以在此处阅读有关特异性的更多信息 https://developer.mozilla.org/en-US/docs/Web/CSS/Specificity

关于css - 覆盖引导类属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34028863/

相关文章:

html - 选择选项文本阴影未呈现

html - 如何在div中定位元素

html - Bootstrap 中的默认填充类可用

javascript - 在输入字段中单击时,菜单下拉列表中的表单不会保留 - Bootstrap 3

html - 在嵌套列中获取等高的行 HTML Bootstrap

jquery - 引导页脚未显示完整页面宽度

c++ - 如何设置 QCheckBox 指示器的大小?

css - 无法让背景图像呈现全高

css - 单独的桌面 CSS 样式表

html - 如何在选择列表中设置标题和默认值?