2015-05-30 39 views
3

在一个在线教程中,我最近被告知要为导航元素创建一个名为“nav”的类。我是CSS的初学者,但仅仅是我,还是这种冗余/混乱/不好的做法?在HTML5 + CSS中,是否是<nav class =“nav”>冗余?

+2

是的,多余的。 –

+2

在我看来,它不是多余的,但最终还是由编写代码的人来管理样式。我个人喜欢做一个类,并使用它,而不是 –

+0

这一切都取决于你的HTML标记。如果由于某种原因,你有多个'

回答

1

这不是多余的。 DOM元素nav与CSS类nav不同。

如果你想要的风格深受阶级这个元素,你可以使用此样式声明(例如):

.nav { background-color : #F00; } 

,如果它是由元素风格的类型将是:

nav { background-color : #F00; } 

这可能看起来微不足道,但那段时间.有所不同。这意味着您正在按类别而不是按元素名称识别项目。如果使用类的语法(与.),那么你也可以这样写:

<div class="nav"></div> 

这红色背景显示,如果你提供的类定义,但如果你的风格元素直接输入。

在简单的应用程序中,您可以直接使用样式元素类型(例如<nav>)而不是类(例如class="nav"),但是随着您获得更复杂的布局,您将要使用类。此外,如果您使用基于选择器的库(如jQuery)或document.querySelect(),则可能有充分的理由指定一个类。

如果您确实知道所有页面中所有<nav>元素的样式都是相同的,那么请尽量使用元素选择器,但为了保持灵活性,最好使用类。

+1

非常详细的描述,谢谢。 – JBeck

3

NO它不是多余的。

它是多余的如果您认为在您的特定情况下,你的罚款与nav{ /*blaah blaah*/ }

<nav>是,向搜索引擎优化导航代表语义HTML5标记。一个navitagion是你想要的。因此,如果您有倍数nav元素在我们的页面中,您可以使用nav直接对目标样式标记元素我很高兴看到这一点。

+2

这是正确的答案。最佳实践表明,你真的不应该风格的实际元素。你应该总是使用类。这允许未来的规模和更好的书面CSS。 –

+1

关于SEO如何对待'