有没有办法在填充等css缩写中指定“初始”值?

时间:2010-09-08 17:05:42

标签: css

说我有一个复杂的样式表,有很多交互式样式等。

对于特定的类,我想覆盖padding-top和padding-bottom,而不改变padding-left和padding-right的值(对于获取我指定的类的不同元素,这甚至可能是不同的东西)。

有没有办法用速记来做到这一点,比如

.special {
    padding: 10px initial 5px;
}

留下以前的值,或者我必须像这样拼出我的CSS:

.special {
    padding-top: 10px;
    padding-bottom: 5px;
}

感谢。

5 个答案:

答案 0 :(得分:3)

不,您不能使用“初始”之类的内容,您应该使用padding-toppadding-bottom

答案 1 :(得分:1)

您必须在第二个示例中指定它,浏览器可能会以某种方式解释inherit

.special {padding: 10px inherit 5px inherit; }

但继承的值将来自.special的父元素,而不一定是'默认'值。

<小时/> 已编辑以回复评论:

  

inherit只能用作值的替代,而不能代替长度(来自“CSS:The Definitive Guide”:值:[|] {1,4} | inherit。   @Lekensteyn

因此,需要长手指定值。

答案 2 :(得分:1)

我认为没有办法解决这个问题。遗憾。

答案 3 :(得分:0)

如果你知道左边和右边的填充将始终是相同的数字,你可以这样写:

.special {padding:10px 5px 10px 5px;}

答案 4 :(得分:0)

并非没有使用其中一个如雨少般涌现的css框架:http://lesscss.org/