HTML5的结构

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>



 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值