代码之家  ›  专栏  ›  技术社区  ›  Mala

抵消现有样式

  •  0
  • Mala  · 技术社区  · 14 年前

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

    div {
        width: 100%;
    }
    

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

    1 回复  |  直到 14 年前
        1
  •  1
  •   Mathias Bynens    14 年前

    您需要以下CSS:

    div { width: auto; }
    

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

    div { width: auto !important; }
    

    当然,如果您只需编辑javascript,这样它就不会将样式添加到 div 不再。