【发布时间】:2016-05-29 10:28:50
【问题描述】:
我目前有一个 CSS,其规则在 .small 和 #a 的媒体查询中都是重复的,因为当浏览器宽度小于 600 像素以及单击按钮时,我想要相同的行为。
在我的真实案例中,规则很长,我想避免重复它们。 如何对这样的 CSS 进行重复数据删除?
$('#b').click(function(){ $('#a').addClass('small'); });
#a { background-color: green; }
.small { background-color: yellow !important; /* many other rules */ }
@media (max-width: 600px) {
#a { background-color: yellow !important; /* many other rules */ }
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<div id="a">Hello</div>
<input id="b" type="button" value="Change" />
【问题讨论】:
-
您应该尽量避免使用样式 ID,并且在大多数情况下,只使用样式类。此外,
!important的使用是草率的,只是表示样式表没有逻辑编写。您最好的选择可能是检查并重新制作整个样式表。 -
@JROB 感谢您的提示,但我看不出将
<div id="a">替换为<div class="a">和#a { ... }替换为.a { ... }会改变规则重复问题的任何内容... -
@JROB 你能解释一下你的想法是为了解决这里的问题吗?
标签: css media-queries