HTML5 增加的语义标签(元素)有什么意义?<nav><section><article><aside>

如:<nav><section><article><aside><hgroup>

加不加整个页面没什么变化啊?

阅读 8.4k
6 个回答

以下故事纯属虚构,虽然很美,但却是错误的。如有疑问,你看看 @依云 的回复。


在 html 中,所有的标签都是一视同仁的,所以,N 年前,你可以看到这样的页面。

<div id="list">
  <div class="iteam">java</div>
  <div class="iteam">PHP</div>
  <div class="iteam">python</div>
</div>

后来,标签进化了。

<ul>
  <li>java</li>
  <li>PHP</li>
  <li>python</li>
</ul>

随后,html 变得更加标准化了:

<div id="header"></div>
<div id="footer"></div>
<div id="nav"></div>
<div id="sidebar"></div>

html 继续进化:

<nav>
<section>
<article>
<aside>
<hgroup>

总之,就是越来越语义化。即使在 html5 中,你一样可以只使用 div 开发一个网站。

这是我以前写的一篇文章:

它们的行为和<div>几乎是相同的,只是被赋予了语义.
通过使用语义化标记,可以提高代码的可读性,让浏览器更好地优化你的网页(尤其在移动终端), 以及让搜索引擎爬虫更好地理解你的网页.

全文:http://jyprince.me/program/656

其实都是字面意思,目的是让别人看到以后,知道这个块是干什么的。这样整片文档读起来是有意义的,(比起div)。个人意见,仅供参考。

网页不仅仅是给浏览者看的, 也不仅仅是给主流浏览器解析的.

搜索引擎的蜘蛛, 盲人使用的页面阅读器, 等等场合. 你知道语义化的标签带来多大的好处么?

HTML5添加的语义化标签可以在页面样式加载失败的时候可以让页面呈现出清晰的结构;有利于于 seo 优化,利于被搜索引擎收录(更便于搜索引擎的爬虫程序来识别);便于项目的开发及维护,使 html 代码更具有可读性,便于其他设备解析。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
宣传栏