如何将css类放在css类中?

时间:2009-12-21 16:24:00

标签: css stylesheet

.mac{margin-left:auto; margin-right:auto;}

.table{.mac; color:red;}

我希望能够做到这一点,对我来说没有意义,为什么我需要这样做:

.table{margin-left:auto; margin-right:auto; color:red;}

我知道我可以做的表:

<table class="table mac">

或者只需输入上面的.table{margin-left:auto; margin-right; color;},但这似乎是多余的。

有没有办法在我的第一个声明中做我想要完成的事情,是否有一些我不知道的特殊语法使这个工作?

4 个答案:

答案 0 :(得分:8)

您可以使用逗号将多个CSS选择器组合在同一行:

.mac, .table
{
    margin-left:auto;
    margin-right:auto;
}

.table
{
    color:red;
}

答案 1 :(得分:5)

简短的回答是否定的,您不能“包含”其他CSS类或“继承”它们可以这么说。

但是,有一些工具可以用来为你提取这类东西。我想起了LESS。我认为“mixin”就是你要找的东西。

以下是LESS首页的代码示例:


.rounded_corners (@radius: 5px) {
  -moz-border-radius: @radius;
  -webkit-border-radius: @radius;
  border-radius: @radius;
}

#header {
  .rounded_corners;
}

#footer {
  .rounded_corners(10px);
}

答案 2 :(得分:2)

.table, .mac {margin-left:auto; margin-right:auto;}
.table {color:red;}

答案 3 :(得分:0)

我取决于你想做什么。 在你的情况下: - 如果你想使用CLASS表,你可以使用.table - 对于CLASS mac,您可以使用.mac - 并且您可以将它们与逗号结合使用:.table, .mac - 如果您为两个类添加相同的样式,通常会使用它。

但是 - 如果你想把风格放在表格中的CLASS .mac上,那么这将有助于你:

table .mac{} - 注意我没有使用逗号,只是一个空格......这样你在表格中定义了CLASS .mac但不是CLASS .mac在桌子之外

祝你好运