HTML5的结构

来源:互联网 发布:玛雅软件培训 编辑:程序博客网 时间:2024/05/21 17:27
HTML5的结构
1.主体结构元素
2.非主体结构元素
3.HTML5的结构
    
HTML5相对于HTML4的最大改进在于文档的结构。
通过添加一些结构元素,在结构上,HTML5比HTML4更加清晰明确。

学习内容:
①新增的主体结构元素的定义,使用方法,使用场合。article, section, nav, aside.
②新增的非主体结构元素的定义,使用方法,使用场合。header, hgroup, footer, address.
③综合应用这些结构元素来编排页面以及整体布局。

/*=================================article元素===============================================*/
article元素:代表可以独立被外部引用的内容。article有标题,正文和注脚。
示例:
<article>    <header>        <h1>header</h1>    </header>    <p><b>苹果</b>,亚当的苹果,牛顿的苹果</p>    <footer>    <p><small>罪恶而甜蜜</small></p>    </footer></article>


/*=================================section元素=============================================*/
定义:对页面上的内容进行分区。通常由内容和标题构成。
如果需要对一个容器直接定义,推荐使用div而非section。
区分article和section:以一篇文章为例,整篇文章就是article而文章中的一个段落就是section。
显然,从article和section的字面意思就可以看出两者的关系。但是这这是表面上的区分。

示例1:
<article>    <h1>苹果</h1>    <p><b>苹果</b>,植物类水果,多次花果。</p>    <section>        <h2>红富士</h2>        <p>红富士不是绿富士</p>    </section>    <section>        <h2>国光</h2>        <p>万寿苹果</p>    </section></article>



示例2:
<section>    <header>        <h1>苹果</h1>        <p>发表日期:<time pubdate datetime = "2010-10-10T19:10-08:00">一小时前</time></p>    </header>    <p><b>苹果</b>,植物类水果,多次花果。</p>    <section>        <h2>评论</h2>        <article>            <header>                <h3>发表者:绿林牛</h3>                <p>                    <time pubdate datetime = "2010-10-10T19:10-08:00">一小时前</time>                </p>            </header>        </article>        <article>            <header>                <h3>发表者:张玉</h3>                <p>                    <time pubdate datetime = "2010-10-10T19:10-08:00">一小时前</time>                </p>            </header>        </article>    </section></section>


疑惑:article中可以包含section,section中也可以包含article。如何区分?
section强调对内容进行分段或者分块,article强调独立性。具体来说,
一块内容相对独立完整应该使用article,如果你只想对一块内容可进行分段,应该使用section。
sectio元素的禁忌总结:
①不要将section元素用作设置样式的页面容器,那是div的工作。
②如果aside, nav, article元素更符合条件,不要使用section元素。
③不要为没有标题的内容区域使用section元素。


/*=================================nav元素===========================================*/
定义:是用作页面导航的链接组,导航的元素链接到其它页面或者当前页面的其它部分。

使用方法:
<body>    <h1>技术资料</h1>    <nav>        <ul>            <li><a href = "/">主页</a></li>            <li><a href = "/events">开发文档</a></li>        </ul>    </nav>    <article>        <header>            <h1>HTML5与CSS3的历史</h1>            <nav>                <ul>                    <li><a href = "#HTML5">HTML5的历史</a></li>                    <li><a href = "#CSS3">CSS3的历史</a></li>                </ul>            </nav>        </header>        <section id = "HTML5">            <h1>HTML5的历史</h1>            <p>讲述HTML5的历史的正文</p>        </section>        <section id = "CSS3">            <h1>CSS3的历史</h1>            <p>讲述CSS3的历史</p>        </section>        <footer>            <p>                <a href = "?edit">编辑</a>                <a href = "?delete">删除</a>                <a href = "?rename">重命名</a>            </p>        </footer>    </article>    <footer>        <p><small>出版所有:绿林牛</small></p>    </footer></body>



/*====================================aside元素============================================*/
定义:表示当前页面的附属信息部分。
用法:
①被包含在article内作为主要内容的附属信息。
 
  <!DOCTYPE html>    <head>    <title>元素示例</title>    </head>    <body>        <header>            <h1>F#入门</h1>        </header>        <article>            <h1>第四节 词法闭包</h1>            <p>lambda表达式可以创建词法闭包(文章正文)</p>            <aside>                <h1>名词解释</h1>                <dl>                    <dt>F#</dt>                    <dd>F#是.Net2010引入的新型函数式编程语言</dd>                </dl>                <dl>                    <dt>词法闭包</dt>                    <dd>词法闭包是指将创建lambda表达式时的环境保存起来。</dd>                </dl>            </aside>        </article>    </body>


②在article外使用,作为页面的附属信息部分。
<aside>    <nav>        <h2>评论</h2>        <ul>            <li>                <a href = "http://blog.sina.com.cn/1683">erway</a>            </li>            <li>                <a href = "http://blog.sina.com.cn/u/1345">太阳雨</a>                10-22 23:48<br/>                <a href = "http://blog.sina.com.cn/s/blog_6a9kv8f.html#comment">拜读老牛的文章</a>            </li>            <li>                <a href = "http://blog.sina.com.cn/u/1259295385">新浪官博</a>                08-12 08:50<br/>                <a href = "#">恭喜,你已经开通了博客</a>            </li>        </ul>    </nav></aside>


/*=======================================header元素=============================================*/
定义:一种引导和导航作用的元素。用做标题。可以包含表格,表单和logo图片。

用法:

<header>        <hgroup>        <h1>IT新技术</h1>        <a href = "http://blog.sina.com.cn/itnewtech">http://blog.sina.com.cn/itnewtech</a>        <a href = "#">[订阅]</a>        <a href = "#">[手机订阅]</a>        </hgroup>        <nav>            <ul>                <li>首页</li>                <li><a href = "#">博文目录</a></li>                <li><a href = "#">图    片</a></li>                <li><a href = "#">关 于 我</a></li>            </ul>        </nav>     </header>


注意事项:一个header元素至少包含一个heading元素。

/*=======================================hgroup元素=============================================*/
定义:将主标题和子标题进行分组的元素。
用法:
 
  <article>        <header>            <hgroup>                <h1>文章主标题</h1>                <h2>文章子标题</h2>            </hgroup>        </header>        <p>文章正文</p>    </article>


/*=====================================footer元素===============================================*/
定义:区域的注脚信息。
<footer>    <ul>        <li>版本信息</li>        <li>站点信息</li>        <li>联系方式</li>    </ul></footer>


/*=====================================address元素===============================================*/
定义:用来在文档中呈现联系信息。
<footer>    <div>        <address>            <a title = "文章作者:绿林牛" href = "http://blog.sina.com.cn/itnewtech">绿林牛</a>        </address>        发表于<time datetime = "2017-10-25">2017/10/25</time>    </div></footer>



/*=====================================HTML5大纲===============================================*/
显示编排:使用section创建文档结构的编排方式。
<body>    <h1>网页级内容区块标题</h1>    <p>网页级内容区块正文</p>    <section>        <h2>section级内容区块的标题</h2>        <p>section级内容区块的内容</p>    </section></body>



隐式编排:不使用section而使用h1-h6和hgroup编排文档结构。
<body><h1>网页级内容区块标题</h1><p>网页级内容区块正文</p><h2>section级内容区块的标题</h2><p>section级内容区块的内容</p></body>



推荐使用显示编排,因为结构更为清晰。

/*====================================页面编排示例=====================================*/
<!DOCTYPE><head>    <title>页面编排示例</title>    <meta charset = "UTF-8"></head><body><header>    <h1>网页标题</h1>    <!-- 网站导航链接 -->    <nav>        <ul>            <li><a href = "index.html">首页</a></li>            <li><a href = "help.html">帮助</a></li>        </ul>    </nav></header><article>    <hgroup>        <h1>文章主标题</h1>        <h2>文章子标题</h2>    </hgroup>    <p>文章正文</p>    <section>        <article>            <h1>评论标题</h1>            <p>评论正文</p>        </article>    </section><article<footer>    <small>版权所有:绿林牛</small></footer></body>



原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 到站后火车票掉了怎么办 在手机上买了票怎么办 智行火车票抢不到票怎么办 高铁买票票丢了怎么办 异地恋房费太贵怎么办 高铁票车上丢了怎么办 取了高铁票丢了怎么办 高铁买了学生票没带学生证怎么办 买的学生票超过区间怎么办 买了超过区间的学生票怎么办 火车票大于学生票购买区间怎么办 买了学生票学生证丢了怎么办 取票学生证没带怎么办 学生卡的失磁怎么办 学生证没有充磁买不了学生票怎么办 买学生票不在优惠区间怎么办 火车票学生优惠次数用完怎么办 学生乘火车优惠磁卡丢了怎么办 磁卡锁的卡丢了怎么办 电梯磁卡扣丢了怎么办 买火车票手机号填错了怎么办 买火车票乘客身份核验失败怎么办 火车票不在一个车厢怎么办站票 坐火车丢东西了怎么办 g2坐过站了怎么办 坐火车买近了怎么办 打印的纸质火车票丢失怎么办 格力空调没保修单怎么办 格力空调不兑现保修怎么办 哈空调如果退市怎么办 空调保修单丢了怎么办 海尔空调发票丢了怎么办 格力空调发票丢了怎么办 联程航班第一程延误怎么办 飞机经停10小时怎么办 去车站买票没带身份证怎么办 转机航班第一班延误了怎么办 转机航班第一班取消了怎么办 香港转机大陆行李托运怎么办 联程车票第一班车晚点怎么办 到了普吉机场接机怎么办