如何将CSS属性设为null?

18 浏览
0 Comments

如何将CSS属性设为null?

我页面上有两个外部 CSS 文件。

第一个 Main.css 包含了所有的样式规则,但我无法访问它,因此无法修改它。我可以访问第二个文件 Template.css,所以我需要在 Template.css 中覆盖 Main.css 的值。

如果我只是要改变一个值,那很容易,但是如果我想完全删除一个属性呢?

比如说一个类 .c1 有一个 height: 40px;,我要如何删除这个 height 属性?

0
0 Comments

问题的出现原因是想要在CSS中将属性设置为默认值。解决方法是使用CSS3中添加的unset值。与auto或initial相比,unset是一种更通用的方法,因为它将每个CSS属性设置为其默认值,并且还设置了其相对于父级的默认行为。注意,initial值会破坏上述行为。根据MDN的说法,unset值可以应用于任何CSS属性,包括CSS的快捷方式all。如果继承自父级,则该关键字将属性重置为其继承的值,否则将重置为其初始值。

0
0 Comments

如何取消CSS属性?

您必须将每个属性重置为其默认值。鉴于您提供的信息,这并不是很好,但这是唯一的方法。

在您的示例中,您可以这样做:

.c1 {
    height: auto;
}

您可以在此处搜索每个属性:https://developer.mozilla.org/en-US/docs/Web/CSS/Reference

例如,对于 height

初始值: `auto`

另一个示例,max-height

初始值: `none`


在2017年,现在有另一种方法,使用 `unset` 关键字:

.c1 {
    height: unset;
}

一些文档:https://developer.mozilla.org/en-US/docs/Web/CSS/unset

unset CSS 关键字是初始值和继承关键字的组合。和这两个其他 CSS 全局关键字一样,它可以应用于任何 CSS 属性,包括 CSS 缩写 all。如果属性从其父级继承,则此关键字将该属性重置为其继承值;否则,将重置为其初始值。换句话说,它在第一种情况下的行为类似于 inherit 关键字,在第二种情况下的行为类似于 initial 关键字。

浏览器支持很好:http://caniuse.com/css-unset-value

对于很好的答案和参考,点赞+1。我认为链接已更改为:developer.mozilla.org/en-US/docs/Web/CSS/Reference

当没有初始值时,将值设置为 `auto` 似乎不起作用("initial value: none")。例如,当执行 "max-width:auto;" 时,我会收到不匹配的属性值错误。我应该怎么办?

您将其设置为 "none"。

我要感谢 他的答案,我无耻地窃取了他的答案,因为我的答案已经被接受,人们可能不会向下滚动。

0