跟永哥学HTML5(4):正确使用HTML5的header、hgroup和section

在上一章HTML5新增语义化元素的使用中我们讲解了HTML新增的标签,并举例给出如何使用。但真正从HTML4转变到HTML5编程,并不是那么简单的事情,很多初学者没有真正了解这些标签,或错误使用HTML5的标签。这节课就给大家讲解常见的HTML5标签错误使用写法,帮助大家学会正确使用HTML5的header、hgroup和section。

1、只在需要的时候使用header和hgroup

写不需要写的标签当然是毫无意义的。不幸的是,我经常看到header和hgroup被无意义的滥用。

关于header和hgroup元素简单总结如下:

  • header元素表示的是一组介绍性或者导航性质的辅助文字,经常用作section的头部
  • 当头部有多层结构时,比如有子头部,副标题,各种标识文字等,使用hgroup将h1-h6元素组合起来作为section的头部

header的滥用

由于header可以在一个文档中使用多次,很多人这样使用:

<!-- 请不要复制这段代码!此处并不需要header -->
<article>
<header>
<h1>125建站网</h1>
</header>
<!-- 文章内容 -->
</article>

如果你的header元素只包含一个头部元素,那么丢弃header元素吧。既然article元素已经保证了头部会出现在文档概要中,而header又不能包含多个元素(如上文所定义的),那么为什么要写多余的代码。简单点写成这样就行了:

<article>
<h1>125建站网</h1>
<!-- 文章内容 -->
</article>

<hgroup>的错误使用

在headers这个主题上,我也经常看到hgroup的错误使用。有时候不应该同时使用hgroup和header:

  • 如果只有一个子头部
  • 如果hgroup自己就能工作的很好。。。这不废话么

第一个问题一般是这样的:

<!-- 请不要复制这段代码!此处不需要hgroup -->
<header>
<hgroup>
<h1>网页设计|www.125jz.com</h1>
</hgroup>
<p>站长:江山如画</p>
</header>

此例中,直接拿掉hgroup,让heading裸奔吧。

<header>
<h1>网页设计|www.125jz.com</h1>
<p>站长:江山如画</p>
</header>

第二个问题是另一个不必要的例子:

<!-- 请不要复制这段代码!此处不需要header -->
<header>
<hgroup>
<h1>网页制作</h1>
<h2>www.125jz.com</h2>
</hgroup>
</header>

如果header唯一的子元素是hgroup,那还要header干神马?如果header中没有其他的元素(比如多个hgroup),还是直接拿掉header吧

<hgroup>
<h1>My company</h1>
<h2>Established 1893</h2>
</hgroup>

125jz网原创文章。发布者:江山如画,转载请注明出处:http://www.125jz.com/1055.html

(0)
江山如画的头像江山如画管理团队
阿里云每天营收3888万元,从云服务收入看云计算发展潜力
上一篇 2018年2月2日 下午8:45
跟永哥学HTML5(5):正确使用HTML5的nav和figure
下一篇 2018年2月3日 上午9:53

99%的人还看了以下文章

  • 第10课:外边距和内边距

    上一课,你学习了盒状模型。在这一课,我们将了解如何通过设置margin(外边距)和padding(内边距)这两个CSS属性来改变元素的显示。 为元素设置外边距 为元素设置内边距 为元素设置外边距 一个元素有上(top)、下(bottom)、左(left)、右(right)四个边。外边距(margin)表示从一个元素的边到相邻元素(或者文档边界)之间的距离。可…

    2020年2月25日
    8.5K0
  • 手把手,永哥教你学会css sprite(雪碧图)技术

    css sprite又称雪碧图或css精灵。 雪碧图就是将小图标和背景图像合并到一张图片上,然后利用css的背景定位来显示需要显示的图片部分。 雪碧图被运用在众多使用了很多小图标的网站上。相对于把每张小图标以.png格式文件的形式引用到页面上,使用雪碧图只需要引用一张图片,对内存和带宽更加友好。 css sprite优点: 有效减少网站的http请求数量,加…

    2018年2月20日
    13.9K0
  • JS实现开关效果,可单选和组选

    JS实现的checkbox开关效果,可单个打开开关,也可一次关闭所有或打开所有开关。 <html> <head lang="en"> <meta charset="UTF-8"> <title>JS实现开关效果,可单选和组选|www.125jz.com</title…

    2018年7月29日
    10.3K0
  • 如何在网页中输入多个连续的空格?

    默认状态下(输入法为半角状态),按空格键只能输入一个空格,要在文本之间插入多个连续的空格,可以使用以下几种方法: 1) 使用Ctrl+Shift+Space组合键。 2) 在中文全角状态下,使用空格键。 3) 选择【插入】→【HTML】→【特殊字符】命令下的“不换行空格”命令。 4) 直接在代码视图输入“&nbsp;”字符。

    2020年4月3日
    28.7K0
  • CSS常用类/ID命名规范

    书写规范请查看《CSS语法及命名规范(入门)》,本文介绍常用类/ID命名规范,CSS文件命名规范,如页面主体:main 内容:content 标签页:tab  章列表:list 信息:msg   标题:title   热点:hot 新闻:news注册:regsiter 合作伙伴:partner 友情链接:friendlink 页脚:footer 版权:cop…

    2019年3月14日
    9.2K0
  • 第13课:HTML音频/视频

    HTML 音频 在 HTML 中播放音频并不容易!您需要谙熟大量技巧,以确保您的音频文件在所有浏览器中(Internet Explorer, Chrome, Firefox, Safari, Opera)和所有硬件上(PC, Mac , iPad, iPhone)都能够播放。 <embed> 元素 <embed> 标签,这是一个 HT…

    2018年1月18日
    8.6K0

发表回复

登录后才能评论