在CSS2,甚至在即将到来的CSS3,我无法找到的东西,是完全自然的和节省时间 - 从其他样式中应用CSS样式,而不是HTML。是否有原因CSS不支持从样式中应用样式?
例如:
.awesome-image {
border: 1px #000 solid;
margin: 2px;
}
.super-awesome-image {
.alwesome-image; // or something like that - this is similar to a function call in a functional language
padding: 2px;
}
通常,一个不具有访问生成的HTML,所以修改CSS是唯一的选择。
这种继承支持会让生活变得更容易,因为我们可以将CSS规则视为“功能”,并重用代码而不是重复它。
还是我失去了一些东西,CSS不支持此(我以前从来没有见过吧?),或者在支持它的计划?请赐教。
编辑:考虑另一个例子表明,声明.awesome-image, .super-awesome-image {common rules}
是不优雅:
.border5 {
border-radius:5px;
-moz-border-radius:5px;
-webkit-border-radius:5px
}
我宁愿不堆积,将要在同一个定义的边界半径所有其他类。唉,这是需要无功能的支持,做什么(我提到了很多次这里只有CSS文件,而不是HTML本身访问)。
你可能想看看“.LESS”为.NET或‘少’的回报率在箱体框架您正在使用这些技术方面的工作。他们启用提到的行为。 – 2010-01-19 10:51:17
至于你的编辑,它不是一个单一的边界半径声明和选择器中的大量类,但有一个单一类选择器并将它应用到每个需要这些样式的元素。因此每个元素有多个类,而不是每个选择器。 – 2010-01-19 11:41:26
是的,它会很棒。但是,为什么要等待css本身改进才能使用预处理器?对于像这样的mixins来说,较少是很好的,你可以在rails之外使用它 - 你需要的只是ruby。 – ozan 2010-01-19 11:47:50