HTML5教程 10分钟了解Elements的使用
沉沙 2018-06-05 来源 : 阅读 1690 评论 0

摘要:HTML Elements是HTML DOM中的概念,是DOM的Node。Element是可以有属性和子节点的node。希望阅读本篇文章以后大家有所收获,帮助大家对HTML5的理解更加深入。

首先说明HTML Elements是HTML DOM中的概念,是DOM的Node。Element是可以有属性和子节点的node。node还有Text, Attribute,Comment,Namespace等。顺便说下HTML Tags是个语法概念,HTML Tags are used to delimit the start and end of elements in the markup.

对Element的分类定义,语义上和语法上是不一样的。

在语义上,根据数据的content model定义来确定使用哪个element,是绘制图形数据则用canvas element,是视频数据则用video element,一篇文章数据用article element,等等。div element永远是最后考虑的。

特别注意Grouping content类的div element和Sections类的article element/section element的区别。

HTML5以前div element随便用都没问题,HTML5则明确限定了div element的使用范围。它没有任何特别的语义,纯粹用于有着共同的属性/样式/脚本需求的一组连续元素。如果这组元素本身已有特殊语义的父元素,就没必要再加一层div了。

虽然从官方详细说明来看,article element可使用于所有可分发或可复用的独立完整的内容数据,比如可用于Web Widget/Gadget,section element可以用于上下文中一组有着共同主题的内容数据,比如网站主页中可分成an introduction, news items, and contact information的数据部分,哇,这样div element几乎没有存在的必要了,但是从官方示例代码以及单词字面意思来看,通常article element仅使用于有header或footer element及主体内容的完整数据,比如文章,section element仅用于有h1-h6 element的片段数据(一般有多片同样结构的数据),比如文章小节。


这里写个简单的例子。
HTML5以前一般页面主结构的元素使用

<!DOCTYPE html><html><head>
  <title>Blog</title></head><body>
  <div id="header">
    <div id="nav">
      <h1>Navigation</h1>
      <ul>
        <li><a href="articles.html">Index of all articles</a></li>
      </ul>
    </div>
  </div>
  <div id="main">
    <div class="article">
      <div class="header">
        <h1>Hello</h1>
      </div>
      <div class="articleBody">
        ...
      </div>
      <div class="footer">
        <p>Posted
          <span>2016-03-08 Tuesday</span>.</p>
      </div>
    </div>
    ...
  </div>
  <div id="footer">
  </div>
</html>

HTML5一般博客主页结构的元素使用

<!DOCTYPE html><html><head>
  <title>Blog</title></head><body>
  <header>
    <nav>
      <h1>Navigation</h1>
      <ul>
        <li><a href="articles.html">Index of all articles</a></li>
      </ul>
    </nav>
  </header>
  <main>
    <article itemprop="blogPosts">
      <header>
        <h1 itemprop="headline">Hello</h1>
      </header>
      <div itemprop="articleBody">
        ...
      </div>
      <footer>
        <p>Posted
          <time itemprop="datePublished" datetime="2016-03-08">Tuesday</time>.</p>
      </footer>
    </article>
    ...
  </main>
  <footer>
  </footer></body>
</html>


简洁,在结构和语义清晰的前提下,能省则省。还有属性的语法规则,列在前面的都是最省写法。


本文由职坐标整理发布,欢迎关注职坐标WEB前端HTML5/CSS3频道,获取更多WEB前端知识!

本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 0 不喜欢 | 0
看完这篇文章有何感觉?已经有0人表态,0%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式AI+学习就业服务平台 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved