具有相同样式的多个类的速记CSS

具有相同样式的多个类的速记CSS,css,Css,有没有一种简写的方法来编写以下所有样式相同的css类 .gtlab1-17, .gtlab1-19, .gtlab1-21, .gtlab2-17, .gtlab2-19, .gtlab2-21, .gtlab3-17, .gtlab3-19, .gtlab3-21 {margin-left:-3px;} 我需要避免拿起: .gtlab1-16, .gtlab2-16, .gtlab3-16 and .gtlab1-15, .gtlab2-15, .gtlab3-15 它们有不同的风格 谢谢

有没有一种简写的方法来编写以下所有样式相同的css类

.gtlab1-17, .gtlab1-19, .gtlab1-21, .gtlab2-17, .gtlab2-19, .gtlab2-21, .gtlab3-17, .gtlab3-19, .gtlab3-21 {margin-left:-3px;}
我需要避免拿起:

.gtlab1-16, .gtlab2-16, .gtlab3-16
and
.gtlab1-15, .gtlab2-15, .gtlab3-15
它们有不同的风格


谢谢

使用更多的类?似乎gtlab2部分描述的是一个方面,而数字代表的是另一个方面。为什么不把它分成两个不同的类,可以一起使用呢?

简短的回答是:

[class*=gtlab]:not([class*=-16]):not([class*=-15])
但是,这可能不起作用,这取决于代码的其余部分和预期的浏览器支持(IE8?)

详细的回答是,如果您有这个选项,请更改您的HTML,或者只使用长版本,它实际上不会在编码时间或下载时间方面花费您太多,并且可能会更快地呈现。

请尝试以下方法:

div[class^="gtlab"] {
    border: 1px solid magenta;
}

div.gtlab2-16, div.gtlab1-57 {
  border: 0;
}
If找到类中某处有“gtlab”的div,然后重写要排除的div

参考资料在这里:这个网站我已经添加了书签,我一直都在重新访问这个页面


您可以按照建议将相同的类添加到所有元素中,但是如果您没有访问html的权限(使用CMS或其他方式),您可以使用jQuery.addClass()向元素中添加一个类,并使用
div[class^=“gtlab”]
作为选择器

如果他们所有人都有一个共同的类,那么就更容易了。您还可以匹配部分类名,然后对于异常,在可能重复此类名后进行重写会更好一些:谢谢DuddiMai,但我会有很多类要重写?如果您要排除的类比示例中的6多,那么这可能不是一个好的解决方案。然后你需要为你想要的添加一个类,为你不想要的添加另一个类。感谢Godwin,我可能会接受这个答案,鉴于你对渲染的评论,请从长计议。我只是觉得可能有一个通配符方法,比如:.gtlab*-17、.gtlab*-19、.gtlab*-21{}