2017-02-16 67 views
0

我很想知道哪种方式是最好的表现明智的,想想这个简单的一般例子,我希望有一个包含文本的元素,大胆的下划线和蓝色的颜色。很多关于元素与一个特定类的CSS类?

我可以用这样的方式:

<p class="bold underlined blue">Happy little clouds</p> 

<p class="bold-underlined-blue">Happy little trees</p> 

第一显然会产生更多的类,但最终重新使用这些类的似乎不是使一个更好非常具体的课程,但另一方面,生产更多的课程,我认为这会对性能产生影响。

+0

如果你不会去重用,你会在更多其他规则中定义'font-weight:bold;'。因此,“性能影响”不应该成为您的第一个解决方案的大问题。 –

+1

表现方面,在*你的具体例子*中,第二个更好; CSS文件越小,载入的速度就越快。但是让我们成为现实 - 对于每个元素的特定类的实际使用情况是什么?而不是可重用的?如果你为每个元素制作一个特定的类,那么你将总是拥有*至少*与页面元素一样多的CSS规则。如果你去重复使用的课程,你可以有100个元素,只有10个规则。所以在99.9%的情况下,*可重用类是最好的选择。投票结束为“主要意见基础”。 – Santi

+0

“主要基于意见”的一种方式会比另一种更快,这就是我所问的问题,但后来有可用性vs可读性,我同意这种说法是基于意见的,而不是我问的问题 – LouisColeman

回答

2

前一种方法(使用多个类)肯定更好。您不仅可以风格的元素有独立

.bold { 
    font-weight: bold; 
} 

.underlined { 
    text-decoration: underline; 
} 

.blue { 
    color: blue; 
} 

但你也可以他们的风格为特定的组合相互如:

.bold.underlined.blue { 
    font-size: 18px; 
} 

在上面的例子中,font-size将仅适用于相应元素具有全部三个类别的情况下,其本质上与后者方法本身相同:)

否t只使用专门的类为您提供了更多的功能,但速度也更快 - 因为您可能在整个文档中多次重复使用类似font-weight: bold的样式,所以专用类意味着您只需要编写一次宣言,而不是必须将其写入每个单独的选择器中。

但是,这些专门化的类只应创建用于多次重复使用的事物 - 为仅使用一次的内容创建专用类将是多余的。

希望这会有所帮助!

+0

OP主要关注性能问题。尝试解决这个问题以及你的答案。 –

+0

刚刚更新了解决性能问题的答案:) –