HTML is about meaning

原文地址: http://marksheet.io/html-semantics.html

HTML标签本身的意义是为了传递对于一个document元素的含义,所以再考虑使用正确的标签表达内容之前,考虑你的网页看起来怎么样为时过早,请将注意力集中到每一个你使用的HTML标签上。

你需要根据你书写的内容及本文本身的含义,来选择与之匹配的HTML标签。

Structure elements: 组织页面

你可以使用结构元素来组织页面的主要部分,这些部分通常包含其他的HTML元素。

下面是一个典型的网页需要包含的主要部分:

  • <header>作为页面的第一个元素,包含logo和tagline。
  • <nav>作为跳转到其他不同的页面的超链接集合。
  • <h1>作为页面的标题。
  • <article>作为页面的内容模块,比如blog的一个post。
  • <footer>作为页面的最后一个元素,位于最底部。

Text elements: 定义内容

在结构元素中,通常需要寻找一些文本元素来达到定义内容的目的。

你将主要使用如下标签:

  • <p>作为段落
  • <ul>作为无序列表
  • <ol>作为有序列表
  • <li>作为列表单元
  • <blockquote>作为引用

Inline elements: 区分文本

因为文本标签通常会很长,并且会有不同的内容,行内元素使你可以将一些关键部分从文本中区分出来。

有很多的行内元素可以使用,但是你会经常用到以下几个:

  • <strong>作为关键字
  • <em>作为强调字
  • <a>作为超链接
  • <small>作为次要字
  • <abbr>作为缩写

尝试阅读下面的HTML代码,你就可以很容易的理解每一个元素的用途。

<article>
  <h1>Main title of the page</h1>
  <h2>A subtitle</h2>
  <p>
    Something something an other stuff and some <em>emphasis</em> and even <strong>important</strong> words.
  </p>
  <p>
    Another paragraph.
  </p>
  <ul>
    <li>One</li>
    <li>Two</li>
    <li>Three</li>
  </ul>
  <blockquote>
    Once said
  </blockquote>
</article>
<aside>
  <h3>My latest posts</h3>
  <ul>
    <li><a href="#">One</a></li>
    <li><a href="#">One</a></li>
    <li><a href="#">One</a></li>
  </ul>
</aside>

Generic elements 演变标签

当没有显而易见的具有语义的标签来匹配相关内容,但你仍然要插入一些标签来达到格式化和分组化的目的,你可以使用一到两个下面的具有演变性的标签:

我理解的演变的意思是这些标签可以通过css样式来变成不同职能的其他标签

  • <div>作为块级元素组
  • <span>作为行内元素组

尽管这些标签没有任何的实际意义,但它们与css配合使用将十分有用。

Don’t overthink semantics 不要想太多

大约有100多种语义标签供你使用。如果可以选择合适的元素来使用,那将是十分不错的选择。

但是不要花费太多的事情太考虑这件事,仅仅从现在开始,有选择地使用上面所提供的标签,你的网页将会变得更好。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

发表于

我来说两句

0 条评论
登录 后参与评论

相关文章

来自专栏小狼的世界

em是否到了退出的时候

今天看到 YUI CSS 框架中的时,看到用了其用来表示宽度的时候,很多地方都用了 em,在调整字体大小的时候,用了百分比。官方的说法是这样的:

702
来自专栏24K纯开源

用Qt写软件系列四:定制个性化系统托盘菜单

导读     一款流行的软件,往往会在功能渐趋完善的时候,通过改善交互界面来提高用户体验。毕竟,就算再牛逼的产品,躲藏在糟糕的用户界面之后总会让用户心生不满。界...

36910
来自专栏Danny的专栏

前端基础——CSS+DIV布局

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/huyuyang6688/article/...

2731
来自专栏互联网杂技

box布局

<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style>...

2707
来自专栏Sign

web版《合成10》制作过程

《合成10》是一个很容易上瘾的游戏。 之前尝试的写了个网页版,游戏地址 ccx01.com/game/get10/ 现在写一下网页版合成10的制作过程。 这个游...

34912
来自专栏前端说吧

css3-巧用选择器 “:target”

3656
来自专栏青蛙要fly的专栏

Android技能树 — View小结

这次是相对View做个小结,主要是View的工作原理,绘制流程等。为什么要总结这块,因为平时自定义View的情况多多少少都会遇到,如果能深刻了解这块知识,对自定...

3172
来自专栏marsggbo

响应式布局简说

简单说呢就针对不同的屏幕分辨率应用不同的CSS样式。比如在电脑、Pad设备上,屏幕比较宽,就可以一行放2个Div。 到了手机上,或者Pad竖着拿的的时候,一行就...

2096
来自专栏ionic3+

【技巧】ionic3如何实现优雅的弹窗动画

关于这篇文章,很早前就准备写了,只是内容属于我了解的非官方资料,怕有Bug风险误导别人,又怕我表述不清楚一直没动笔,后来群里有人专门找我问这个,那我还是写一下,...

2703
来自专栏LIN_ZONE

css 中 zoom和transform:scale的区别(转载)

还在几年前,zoom还只是IE浏览器自己私有的玩具,但是,现在,除了FireFox浏览器,其他,尤其Chrome和移动端浏览器已经很好支持zoom属性了:

983

扫码关注云+社区

领取腾讯云代金券