2012-02-12 54 views
0

我的样式表往往有一个批次冗余。例如,重新格式化CSS - 折叠冗余路径?

/* example one: different attributes */ 
div#main_work > div.main_work table.data td span.rating, 
div#main_work > div.main_work table.data td span.follow 
    { white-space: nowrap; vertical-align: center; } 

/* example two: same upstream, different downstream */ 
div#main_work > div.main_work > form table, 
div#main_work > div.main_work > table, 
div#main_work > div.main_work div table 
    { width: 100%; margin: 0px; -moz-box-sizing: border-box; box-sizing: border-box; } 

是否有语法正确的方法来折叠此?

+0

一种多余的问题。这就像是说你有一袋弹珠,并询问选择绿色弹珠的概率,除非我们知道你有多少弹珠/颜色,否则我们怎么知道?根据您的HTML,CSS只能根据具体情况进行简化,这会使问题过度本地化,或者在未查看HTML的情况下无法实现。这表示看起来elclanrs已经给出了最合理的简化... – lpd 2012-02-12 04:23:57

回答

1

不,这只是它是如何。您可以通过约为东西不太具体缓解一些麻烦,尤其是在ID选择:

/* example one: different attributes */ 
#main_work > .main_work .data .rating, 
#main_work > .main_work .data .follow 
    { white-space: nowrap; vertical-align: center; } 

/* example two: same upstream, different downstream */ 
#main_work > .main_work > form table, 
#main_work > .main_work > table, 
#main_work > .main_work div table 
    { width: 100%; margin: 0px; -moz-box-sizing: border-box; box-sizing: border-box; } 

你也许可以减少这种进一步。试着简洁明了的意图。作为另一种选择,您可以尝试LESS stylesheets

+0

感谢您的回复。就像你想象的那样,通过不明确的目标已经得到了严厉的批评 - 不想再去那里 - 从混乱中挖掘出来的方式太长了。是的,对某些人来说'少'是一个有效的选择。 – 2012-02-12 04:20:14

+1

@ccyoung:过分指定* *更糟糕。相信我,只是简化你的表情。如果你不这样做,你至少可以从'div#main_work'中移除'div'。这是完全多余的,阻碍了性能。 – Ryan 2012-02-12 04:22:44

+0

同意从'div#main'删除'div' - 这确实太过分了。但我有兴趣了解为什么你的内容过分指定更糟糕。从我的角度来看,注意过早优化类别中的过度指定。 – 2012-02-12 04:33:25

1

嗯,我不知道你的html代码,但你可能会摆脱一些东西,并针对实际需要的元素,避免过度规范。只是一个例子,适合您的需求,但你明白了:

/* example one: different attributes */ 
.main_work .rating, 
.main_work .follow 
    { white-space: nowrap; vertical-align: center; } 

/* example two: same upstream, different downstream */ 
.main_work table, 
.main_work form table, 
.main_work div table 
    { width: 100%; margin: 0px; -moz-box-sizing: border-box; box-sizing: border-box; } 
+0

谢谢,但从我的角度来看,over-specification是向管子中添加不必要的字节的罪恶罪,而规格不足则是一种致命的罪,调试css的两三次生命周期。 (向良好的天主教徒道歉) – 2012-02-12 04:22:50