1

如果标题很奇怪,我实际上想说的是我有一个应用它自己的风格的框架(Richfaces)。我有一家公司 CSS,但我不是 CSS 专家,我所需要的只是覆盖来自 Richfaces 的 CSS,这样就不会对公司 CSS 中的内容应用任何内容。

这是来自我不想应用的richfaces的CSS:

*.rf-dt-hdr-c {
    border-bottom-width: 1px;
    border-bottom-style: solid;
    border-bottom-color: #C4C0C9;
    border-right-width: 1px;
    border-right-style: solid;
    border-right-color: #C4C0C9;
    background-color: #D4CFC7;
    background-image: url(/rfRes/colHdrGrad.png.xhtml?v=4.0.0.Final&db=eAFjZJBjZDBiZBBh!H!!zlXG!1fOH2dgAgA4fAdk&ln=org.richfaces.images);
    background-position: top left;
    color: #000000;
    font-family: Arial, Verdana, sans-serif ;
    font-size: 11px;
    font-weight: bold;
    padding: 4px;
    text-align: center;
}
4

3 回答 3

5

为了覆盖这一点,您可以将每个规则重置为您喜欢的内容,并确保您的公司 CSS 在链接顺序中显示在较低的位置。(也就是说,最后应用您的公司风格。)

例如,如果您在 CSS 中根据需要重做每种样式,您应该像这样链接它们

<link rel="stylesheet" type="text/css" href="Styles/richface.css" />
<link rel="stylesheet" type="text/css" href="Styles/corporate.css" />

如果样式相同,则将应用顺序中显示较低/较晚的样式(因为它将覆盖前者)。

实际上,为了让您的样式覆盖其他样式,您的 CSS 需要比其他 CSS 更具体。

因此,您还可以将元素设置为更具体。

代替

*.rf-dt-hdr-c {

让它像

div#wrapper div.rf-dt-hdr-c {

这增加了特异性。当然,规则需要与您的 HTML 相匹配。

有关特异性的更多信息,请参见:http ://www.htmldog.com/guides/cssadvanced/specificity/

于 2012-01-16T00:59:01.243 回答
3

从您在对答案的评论中描述的意义上说,这是不可能的,“我不知道用什么来覆盖属性。” 没有办法在 CSS 规则中指定不应用另一个规则。

于 2012-01-16T07:11:01.497 回答
0
text-align: center !important;

覆盖!important其他样式

于 2012-01-16T01:02:53.197 回答