Section 和 Article,如何选择?有什么区别?

发布于 2021-11-03 19:26:52 字数 2232 浏览 1397 评论 0

html5 的出现,让前端人员眼前一亮,大喊方便的同时,也空前重视标签使用的语义化,人们恨不得一下就去改变由div+css所带来满眼的div。新增的结构性标签有很多,比如 headernavfooterasidesectionarticle 等。

区别

但有个问题令不少人犯难,前面的几个都还比较好理解,后面两个到底是什么意思呢,如果按照直译过来的意思。section:“部分”,article:“文章”。这显然无法很好的去区分,为什么呢,因为“部分”这个词儿,意思太模糊,“文章”里面也可以有“部分”,“部分”里面也可以有“文章”。权威指南里是这么进行说明的。

  • article:代表文档、页面或应用程序中独立的、完整的、可以独自被外界引用的内容。
  • section:用于对网站或应用程序中页面上的内容进行分块。

大家注意两个字眼就可以较好去区分它们的用法:“独立、完整”和“分块”。 在实际应用中,的确像上面所说它们俩可以互相包含,但这并不代表是可以替换,完全是两个概念。还是举例子看的更直观。

 <article>
  <header>
    <h1>苹果</h1>
  </header>
  <p>苹果是一种很好的水果。</p>
  <section>
    <h2>评论</h2>
    <article>
      <header>
        <h3>发表者:张三</h3>
      </header>
      <p>苹果好吃</p>
    </article>
    <article>
      <header>
        <h3>发表者:李四</h3>
      </header>
      <p>苹果对身体好</p>
    </article>
  </section>
</article>

这里是个简单的示例,首先,这里有一段话是描述苹果的,下面的评论也是关于这篇文章,整个是一体的,此所谓“独立,完整”,而section在这里负责的是评论区这一块儿,把评论这个区块儿给分了出来,跟上面的标题和正文做个区分。

那或许有人又要问了,上面说的是挺合理的,那下面的评论区,怎么还用到了 article 呢?就那么一小块儿,这里就要消除一个可能走进的误区了,标签不是按内容的多少和看起来占的块儿大小来分的,语义的意思是,它代表着什么,要表示的是什么,而评论区里用article,是因为,李四所发表的评论,跟张三毫无关联,互不影响,它们是独立的,完整的。

可以再来看一个例子

<article>
  <h1>苹果</h1>
  <section>
    <h2>红富士</h2>
    <p> 红富士是从普通的富士选育出的着色系富的统称 </p>
  </section>
  <section>
    <h2>国光</h2>
    <p> 又名小国光、万寿 </p>
  </section>
</article>

注意

在这个例子中,section 并没有用来区分文章主体和其他,而是用来对文章进行段落划分,大家可能也注意到,里面是包含了一个标题和一段文字。下面说注意事项。

说了这么多,大家可能还是觉得二者区别不大,其实,article 这个标签,可以看做是 section 的特殊种类,它同样是分出了一个部分,不同的是这部分的 独立性。

Section 使用的几点禁忌:

  1. 不要将它作为设置样式的页面容器,那个是div要做的事。
  2. 如果其他的元素,比如 article、aside、nav 等更合适,就不要用 section。
  3. 不要为没有标题的内容区块使用section。(上面代码处有提过哦~)

好了,关于这兄弟俩的用法问题就先说到这儿了,希望对你有所帮助。欢迎交流。

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

坚持沉默

暂无简介

0 文章
0 评论
934 人气
更多

推荐作者

醉城メ夜风

文章 0 评论 0

远昼

文章 0 评论 0

平生欢

文章 0 评论 0

微凉

文章 0 评论 0

Honwey

文章 0 评论 0

qq_ikhFfg

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文