[英]How to combine different css class selectors into one javascript line?
[英]how to combine multiple css class selectors into one?
我有一些选择器类,例如
.rt-grid-6 { ... }
.largemargintop { ... }
.rt-left { ... }
我必须在我的html中的几个元素中使用它们
样品
<div class="rt-grid-6 largemargintop rt-left">
...
</div>
<div class="rt-grid-6 largemargintop rt-left">
...
</div>
...
所以这是重复的并且很难管理,如果我必须添加或删除一个类,那么我必须更新所有出现的情况
所以我在想下面提到的CSS是否有可能
.item
{
rt-grid-6; //refer to the mentioned class
largemargintop;
rt-left;
}
我可以在下面的示例中使用它们
<div class="item">
...
</div>
<div class="item">
...
</div>
...
我可以使用值来定义一个新的.item类,但是问题是我无法更改现有类,并且同时我必须在各个类中使用样式定义。
我不能少使用,因为我无法重新定义样式或无法访问源。 我只收到经过编译的CSS,可以按原样使用。
那么,有什么方法可以实现我的期望?
解决方案可能不是我提到的方式所必需的,但我想增加维护量,以便更轻松地从单个点向所需元素添加或删除类。
仅使用CSS
是不可能的。 您必须使用CSS编译器,例如SASS
或LESS
。
您可以查看指南: http : //sass-lang.com/guide
SASS
的示例:
.item
{
@extend .rt-grid-6; //refer to the mentioned class
@extend .largemargintop;
@extend .rt-left;
}
很简单!
在SASS
您可以使用变量,还有更多! 这是非常有用的。
由于您不能使用更少或更少,所以您可以使用临时css类名,并使用jQuery替换它,例如以下代码,
HTML
<div class="temp-class">aaaaaaaaaaaaaa</div>
<div class="temp-class">bbbbbbbbbbb</div>
JS
$(".temp-class").attr("class", "rt-grid-6 largemargintop rt-left");
尝试使用SASS / LESS来克服这个问题。 您使用的是行不通的
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.