1

是否可以将 CSS 中的属性设置为“未在此处定义”?

想象一下这个例子。

<div class="intro-text">
    This text should be big and have padding on all sides.
</div>
<div class="intro-text no-tb-padding">
    This text should also be big, but only have padding left & right.
</div>

.intro-text {
    font-size: large;
    padding: 1em 2em;
}
.no-tb-padding {
    padding: [what here?];
    ...

现在,事情就是这样。我想为后面的课程设置padding-topand为 0 。padding-bottom我知道这可以通过这两条规则来完成。但是 CSS 中有没有办法像这样定义它?

padding: 0 [defined somewhere else];

有了这个,前一个类将定义左右填充,但后一个类将定义顶部和底部。

这目前在 CSS 中是可能的吗?

4

3 回答 3

3

对于这样的工作流程,您会喜欢 SASS 或 LESS。

对于这个特定示例,只需设置 padding-right 和 padding-left:

padding-right: 0;
padding-left: 0;
于 2013-11-12T17:10:34.080 回答
2

速记属性的目的是允许您在单个声明中指定所有适用的值。由于您试图设置某些属性值,因此您不应该使用(实际上也不能使用)速记属性。您必须分别设置padding-toppadding-bottom属性。

于 2013-11-12T17:07:36.337 回答
1

我使用LESS,这是一个CSS框架,非常有用。前任。您可以使用变量并将其提供给任意数量的类,然后,所有类都具有相同的描述,即仅在一个地方定义。要在普通 CSS 中使用,您只需添加:

padding-right: 0;
padding-left: 0;

因为 padding top 和 bottom 将被上一个类占用。希望它有所帮助。

于 2013-11-12T17:23:56.127 回答