【问题标题】:counteracting existing styles抵消现有风格
【发布时间】:2010-08-10 08:36:38
【问题描述】:

我有一个带有填充的 div,由 Javascript 创建和设置样式。 此 div 是在具有以下 CSS 规则的页面上创建的:

div {
    width: 100%;
}

这搞砸了,因为它将我创建的 div 的宽度更改为它自然会加上它的填充(所以我最终得到了 div 边框之外的按钮)。我不能静态设置 div 宽度,因为它们取决于内容。那么如何覆盖这条规则并将其恢复为“默认宽度”呢?

【问题讨论】:

    标签: javascript css defaults


    【解决方案1】:

    您需要以下 CSS:

    div { width: auto; }
    

    由于 CSS 规则是通过 JavaScript 应用的,这会导致它成为内联样式,因此您可能必须使用 !important 来确保新规则具有更高的特异性,以便覆盖旧规则。

    div { width: auto !important; }
    

    当然,如果您可以只编辑 JavaScript,这样它就不会再将样式添加到 div,那就更好了。

    【讨论】:

    • 谢谢!像这样的问题困扰了我好久,我从来不知道有这么简单方便的规则存在
    猜你喜欢
    • 1970-01-01
    • 2020-07-15
    • 2013-11-23
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-03-13
    相关资源
    最近更新 更多