【问题标题】:CSS style attribute left blank [closed]CSS样式属性留空[关闭]
【发布时间】:2016-09-12 12:10:38
【问题描述】:

transform 这样的 CSS 属性为空时会发生什么,即

element.style.transform = "";

检查这个小提琴- https://jsfiddle.net/e85odhjf/

在 javascript 部分,我将 left.style.transform="" 留在了 back() 函数中(由 onmouseout 控制),因此它将形状恢复为原始形式。

【问题讨论】:

    标签: javascript css css-cascade


    【解决方案1】:

    当您从样式属性中清除声明时,您将删除 declared value

    每个属性声明applied to an element 贡献一个 与元素关联的属性的声明值。详情请见Filtering Declarations

    而且,这是一个高specificity的声明值:

    每个声明都具有与其出现的样式规则相同的特殊性 in. 就这一步而言,不属于 样式规则(例如contents of a style attribute)是 被认为具有比任何选择器更高的特异性。这 具有最高特异性的声明获胜。

    因此,您要删除的值很可能是cascaded value

    级联值表示the cascade的结果:它是 赢得级联的declared value(在 output of the cascade)。

    在这种情况下,cascadedspecifiedcomputedused 的所有值都可能发生变化。

    如果没有其他声明值,则级联的输出将是一个空列表,并且不会有级联值。那么指定的值就是defaulting processes的结果。

    在您的情况下,由于transform 不是继承属性,因此将使用其初始值。即transform: none。这将“将形状恢复到原始形式”。

    【讨论】:

      猜你喜欢
      • 2017-08-13
      • 2022-01-17
      • 1970-01-01
      • 1970-01-01
      • 2020-11-27
      • 1970-01-01
      • 2023-01-10
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多