【问题标题】:How to override external css?如何覆盖外部css?
【发布时间】:2012-10-01 10:54:36
【问题描述】:

我有一个外部 css 文件,它将 35px 填充应用于我的内容 div。我所有的 html 页面都加载在该 div 中,但对于其中一个页面,我想使用 0 padding-right。

我尝试了内联 css,将其直接应用在该页面的正文上,并且还使用了 !important,但没有任何效果。

我做错了什么?

index.html:

<div id="content"><?php include "page.html"?></div>

main.css:

#content{
    margin-top: 303px;
    padding: 35px;
    z-index:1;
}

page.html:

<body style="padding:0px;">

【问题讨论】:

  • 问题需要更多细节,可能还有代码参考,这可能是一百万个问题之一
  • 你能提供代码吗?更好的是,jsfiddle 示例?
  • 您将padding:0; 属性应用于body,而不是div。这可能是你的问题吗?或者这只是一个错字?

标签: css html overriding padding


【解决方案1】:

要覆盖 css 设置,您必须使用关键字 important。

<body style="padding:0px ! important;"> 

【讨论】:

  • 如果上面的样式有!important怎么办?
  • 应该不需要在 css 文件中添加它。因此,您可以使用控制台找到 css 文件,然后删除其中的关键字。
【解决方案2】:

Fluidbyte 是对的,我试图在错误的元素上应用 0 填充是很愚蠢的。添加

<style>
#content{
    padding-right:0px;  
}
</style>

在 page.html 上运行良好,覆盖了外部 css。

【讨论】:

    【解决方案3】:

    CSS 是自上而下读取的,因此代码中任何较低的部分都应该被覆盖,请参阅:http://jsfiddle.net/PFx9h/

    如果某些东西没有生效,那是因为有一些其他代码覆盖了它。使用 Webkit Dev Tools 或 Firebug 等元素检查器查看正在应用哪些样式以及如何应用。

    编辑:

    由于您发布了代码,body 样式将不适用于 div。

    【讨论】:

      【解决方案4】:

      在内容 div 内联应用 style="padding:0px;"(不推荐),或者在加载外部样式表后加载您的样式。将style="padding:0px;" 应用于body 只会影响body,并不会应用于其中的每个元素。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 2020-03-04
        • 1970-01-01
        • 2017-09-24
        • 1970-01-01
        • 1970-01-01
        • 2015-07-19
        • 2013-05-24
        相关资源
        最近更新 更多