div 、section 、article的区别和使用场景

COM三叔 发表于 2016-05-06 17:50:19

标签: div, section, article

- +

div 、section 、article的区别和使用场景


主要区别,以及适用场合如下:
1、div在html早期版本就支持了,section和article是html5提出的两个雨衣话标签。如果只是针对一个块内容做样式化,三者并没有区别。
2、作为语义化标签,section应用的典型场景有文章的章节、标签对话框中的标签页、或者论文中有编号的部分。一般来说,当元素内容明确地出现在文档大纲中时,section就是适用的。
3、对于article标签来说,无论从结构上还是内容上来说,article本身就是独立的、完整的。最简单的方法就是看一段内容脱离了所在的语境之后,是否还是完整的、独立的,如果是,则应该用article标签。
4、div、section、article,语义上从无到有,逐渐增强。div无任何语义,仅仅用作样式化或者脚本化,对于一段主题性的内容,比较适用section,而假设这段内容是可以脱离上下文,作为完整的结构体独立存在的一段内容,那么就适合用article。原则上来说,能使用article的时候,也是可以使用section的。但是视情况而定,假如更适合使用article,那么就不要使用section了。


什么时候使用?
1、div:作为布局以及样式化时使用。

2、section:表示文档中的节,一般是具有标题的。比如:文档大纲、文档章节、博客条目、用户评论部分或者论文中有编号的部分时使用;
通常会带有标题。如果没有标题,那么就不推荐使用section
    <section>
            <h2>文章章节标题</h2>
            <p>文章章节段落内容</p>
        </section>


3、article:表示独立的自包含内容,如:一篇文章。文章找那个可以包含标题、内容、脚注
    <article>
            <header>
                <h1>文章标题</h1>
                <p>写作时间 作者信息</p>
            </header>
            <section>
                <p>文章正文</p>
            </section>
            <footer>
                <p>注脚:法律信息神马的</p>
            </footer>
        </article>


标注:
a、<header>:定义文档的页面介绍信息,比如:文章标题、发表时间
b、article和section可以互相嵌套使用

possitive(16) views16215 comments0

发送私信

最新评论

请先 登录 再评论.
相关文章
  • Blender2.7给平面模型添加纹理贴图

    在blender中给模型添加纹理,需要有2个步骤:首先在对象属性栏中给该对象添加材料和纹理建立纹理映射添加材料和纹理这是常见操作,略过步骤。但是仅仅这样操作,...

  • WebAssembly工作原理和JavaScript语言性能对比分析

    本文简单说明WebAssembly(简称wasm)工作原理和高性能的原由(和JavaScript相比)。不过需要提醒的是Wasm并非设计来完全替代JS,而是对JS的一个强大补充,JS中...

  • CSS3属性选择器特性使用详解

    CSS3除了引入动画、滤镜(用于特效)以及新的布局技术外,在选择器(selector)方面也有增强。属性选择器根据元素的属性(attributes)来匹配。这可以是一个单独...

  • WebGL Roadmap

    Unity 5.0 shipped with a working preview of our WebGL technology in March this year. Since then, Google has disabled (by default) NPAPI support in the...

  • CSS3人行走动作图解和动画实现

    对于人类而言,行走是一种很自然的想要前进并防止跌倒的一组动作重复。大部分人1岁就学会了走路,但至此以后的几十年间,或许我们从来没留意过自己行走姿势。当...

  • 前端开发框架技术选型:Angular2 VS React VS jQuery

    Angular和React是主流的2个前端开发框架,但是严格来说两者并非对等的概念。Angular是一个基于MVC(或者MVVM)的框架,包含model(模型)/view(视图)/controll...

  • 计算WebGL中的uniforms变量使用数

    在使用Three.js为人体模型加载皮肤材料时,启用了skinning:true的参数。有时候会导致GL编译错误,提示“too many uniforms”。下面的文章有助于理解错误原因和检...

  • WebVR简介和常用资源链接

    什么是WebVR这是一个实验性的JavaScript API,提供了在用户网页浏览器中访问虚拟现实设备的统一接口。当前主流VR设备如Oculus Rift DK2、谷歌的CardBoard、三星...

  • S3TC(S3 Texture Compression)纹理压缩格式详解

    使用S3TC格式存储的压缩纹理是以4X4的纹理单元块(texel blocks)为基本单位存储的,每纹理单元块(texel blocks)有64bit或者128bit的纹理单元数据(texel data)。这...

  • 如何使用WebGL创建一个逼真的下雨动画

    之前写过文章来分别讲解如何使用CSS3和Canvas2D实现过雨滴和下雨动画。通过背景处理看起来也有视觉上的3D效果,但并非真正的3D场景,如果要加入用户交互,进行36...

  • jQuery Ribbles - 基于WebGL的水面涟漪动效插件

    使用jQuery

  • 如何使用CSS3实现一个3D商品标签

    使用3D缎带形状的标签是常见的一个设计模式,用在商品折扣、文章标题或网站推荐信息上,来突出显示重点内容,吸引用户视觉焦点。实现的方法有2种,一种是使用背...

  • 如何使用CSS3实现书页(书本)卷角效果

    我们有时候想在页面显示一个公告或用户提示信息。一个常用设计是使用书签形状。我们可以给书签添加卷角效果,以使其更为逼真。所谓的“卷角”实际上可以用小角度...

  • 更多...