【问题标题】:In HTML5+CSS, is <nav class="nav"> redundant? [closed]在 HTML5+CSS 中,<nav class="nav"> 是多余的吗? [关闭]
【发布时间】:2015-05-30 02:51:03
【问题描述】:

在一个在线教程中,我最近被告知要为导航元素创建一个名为“nav”的类。我是 CSS 的初学者,但这只是我,还是这是多余/令人困惑/不好的做法?

【问题讨论】:

  • 在我看来这不是多余的,但最终取决于编写代码的人如何管理样式。我个人喜欢创建一个类并使用它来代替
  • 这完全取决于您的 html 标记。如果由于某种原因您有多个 &lt;nav&gt; 元素,那么一个类会很有帮助。我认为这个问题没有正确答案。

标签: css nav


【解决方案1】:

NO这不是多余的。

是的这是多余的如果您认为在您的特定情况下您可以使用nav{ /*blaah blaah*/ }

&lt;nav&gt; 是一个语义 HTML5 标记,表示对 SEO 的导航。导航就是您想要的一切。因此,如果您在我们的页面中有 多个 nav 元素,并且您可以使用 nav 直接定位 tag 元素,我会很高兴看到那个。

【讨论】:

  • 这是正确答案。最佳实践表明你真的不应该为实际元素设置样式。你应该总是使用类。这允许未来的规模和更好的 CSS 编写。
  • 关于 SEO 如何对待&lt;nav&gt; 的好信息,谢谢。
【解决方案2】:

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

如果你想按类设置这个元素的样式,你可以使用这个样式声明(例如):

.nav { background-color : #F00; }

如果按元素类型设置样式,则为:

nav { background-color : #F00; }

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

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

如果您包含类定义,这将显示为红色背景,但如果您直接设置元素类型的样式,则不会。

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

如果您确实知道所有&lt;nav&gt; 元素在您的所有页面中都可以设置相同的样式,那么请务必使用元素选择器,但为了让您自己灵活,最好使用类。

【讨论】:

  • 非常详细的描述,谢谢。
猜你喜欢
  • 2018-02-06
  • 2011-10-22
  • 2021-08-25
  • 2016-02-18
  • 1970-01-01
  • 2018-05-03
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多