CSS还未诞生之前,为了实现一些样式效果。设计师必须使用一些物理标签,例如font、b等。这样会造成页面中充满了为实现各种样式的标签,特别是使用table标签来实现一些特殊的布局,俗称为“标签汤”。为了修改页面的一个样式,可能要修改许多地方,这样的HTML代码极难维护。在这个阶段HTML不仅完成页面内容结构的构建,还要实现设计师所需要的样式,HTML可谓是负重难行。

这个阶段的HTML的代码,充斥着很多只为了实现页面样式而没有实际意思的标签。如果单纯去看HTML代码,根本无法弄清楚整个页面的逻辑结构。这个时候的页面是缺乏语义化的,就像我们学生时代写作文一样,很多标签都是辞不达意。我们现在可能看来当时的技术很烂,但是所有的事物都是从低级向高级不断成长的。我们需要通过了解技术更迭的历史,来了解HTML语义化的发展脉络。

以千禧年为分界线,前后大致分为WEB1.0和WEB2.0时代。在WEB1.0时代,网站的内容主要由网站的雇员生产编辑,他们拥有充分的技术使用HTML标签去完成页面效果。越过千禧年,整个互联网步入WEB2.0时代,互联网信息生产从网站转向广大的互联网用户。一方面,普通的网民大部分不具有熟练使用HTML的能力。另一方面,网站运营方以前的页面生产方式无法满足大量个性化页面的制作。恰逢其时,XHTML和CSS2.1诞生,两者结合使页面的结构和表现分离,非常大量生成个性化的页面。一套HTML代码,可能只需要改变一下CSS文件,就可以改变整个页面的样式。而不用像以前一样,为了修改页面的样式,需要到HTML代码中不断的去追根溯源修改标签。伴随着大量页面的产生,随之而来的是页面检索问题。如果还是按照以前的页面生产方式,页面源码中充斥着大量为了达成样式的无用标签,搜索引擎无法有效的分析这样的HTML结构,进而无法推荐这样的页面。而XHTML严格的标记语法,每对标记代表着内容本来意义,例如h标签就显示这是一个标题,摈弃了如font之类标签的HTML源码对搜索引擎更为友好,让搜索引擎对页面进行标记成为可能。

WEB2.0的到来,标识着每个网民真正成为互联网信息的发起者。良好的网页使用体验,需要每个互联网服务提供者去努力达成。HTML语义化从三个方面促进了互联网使用体验的升级:

  1. 提高页面加载速度。由于采用语义化的HTML标签并去除了很多无实际意义的标签。减小了网页的字节数,加快了HTTP传输传输速度。并且良好的HTML结构更加快了浏览器渲染引擎对页面进行渲染;
  2. 增强了页面的稳定性。良好并充满语义化的HTML结构更具稳定性,很少会因为缺少某个标签导致整个页面的样式混乱,这在table布局的时代是很容易产生的问题;
  3. 丰富了页面的样式。HTML的语义化相当于巩固了页面的机构,这有利于网站开发者编写独立于HTML文件的CSS样式文件。HTML负责内容语义,css负责样式表现。不仅提高了页面的开发速度,也提高了页面的可维护性。这也是网页设计师真正能够独立出来专业进行设计良好开端,进一步加快网页样式的迭代。

以上啰嗦都是这段时间阅读《精通CSS》的一点所思所想,我没有经历过那段用table布局的洪荒年代,但我对那个时代充满敬畏。没有以前的洪荒,怎会有现在的繁花似锦。table布局已死,table布局万岁。

HTML语义化罗嗦罗嗦的更多相关文章

  1. 关于HTML语义化的一些理解

    语义化这个词我想大家都看到了无数次,特别是在一些招聘广告上. 其实我自己也是,不过每次看到都觉得是那些招聘公司复制的,其实他们根本说不清语义化是什么,而且也根本不看重. 所以我一直也没把这东西当回事过 ...

  2. html5语义化标签使用规范

    Html5添加了很多语义化标签,一个典型的html5页面结构可以如下安排 一.使用案例 1. 头部——header和nav标签 header头部,body下的直接子元素header一般用于放页面的介绍 ...

  3. HTML5的新语义化的标签

    在HTML5之前采用HTML+CSS文档结构写法 [ID选择器说明 id选择器——用于标识页面上特定元素(比如站点导航.页眉.页脚)而且必须唯一; 也可以用来标识持久结构性元素(如主导航.内容区域)] ...

  4. 理解HTML语义化

    1.什么是HTML语义化? <基本上都是围绕着几个主要的标签,像标题(H1~H6).列表(li).强调(strong em)等等> 根据内容的结构化(内容语义化),选择合适的标签(代码语义 ...

  5. HTML 语义化之b_i_em_strong

    默认效果 i和em都是斜体.b和strong都是加粗. 语义区别: em 和 strong 分别表示句中强调和全局加重强调 搜索引擎中更受重视,一些语音阅读器也会根据它在阅读时加强语气. i 和 b ...

  6. 如何让你的JavaScript代码更加语义化

    语义化这个词在 HTML 中用的比较多,即根据内容的结构化选择合适的标签.其作用不容小觑: 赋予标签含义,让代码结构更加清晰,虽然我们可以在标签上添加 class 来标识,但这种通过属性来表示本体的形 ...

  7. 浅谈web语义化

    在前端的编程道路上,是否听过html的结构语义化? 是否觉得自己前端嘛,只要做出炫酷的效果,编写出牛逼的JavaScript代码就ok啦.div+css所向无敌,干嘛要用其他标签呢. 是啊,正如上面所 ...

  8. Html标签的语义化

    为了使我们的网站更好的被搜索引擎抓取收录,更自然的获得更高的流量,网站标签的语义化就显得尤为重要.所谓标签语义化,就是指标签的含义. 为了更好的理解标签的语义化,先看下面这个例子: 1 <tab ...

  9. 谈谈对HTML语义化的理解

    什么是HTML语义化? HTML标签可以分为有语义的标签,和无语义的标签.比如table表示表格,form表示表单,a标签表示超链接,strong标签表强调.无语义标签典型的有<div>, ...

随机推荐

  1. python操作从数据库中获取数据的接口

    1.输入一个表名,获取表里面的数据 2.判断用户是否存在,如果不存在就添加到数据库里面

  2. 【吴恩达课程使用】anaconda (python 3.7) win10安装 tensorflow 1.8 cpu版

    [吴恩达课程使用]anaconda (python 3.7) win10安装 tensorflow 1.8 目前tensorflow是只支持到python3.6的,anaconda最新版本已经到pyt ...

  3. 解决vue版本不匹配的问题 Vue packages version mismatch:

    解决方式:重新单独安装提示冲突的模块  比如如上的冲突,我重新下载了 npm i vue-template-compiler@2.6.7 --save 再重新启动就可以了 npm run dev

  4. URL地址中传递数组参数的方法

    示例:http://127.0.0.1/text/index.php?links[]=ddddd&links[]=fffff var_dump($_GET); array(1) {     [ ...

  5. Python记录日志模块推荐-loguru!

      作者:小张学Python 本文链接: https://mp.weixin.qq.com/s/dkNkEohPl6H2VopUrpxxZg 转载请注明来源!! 前言 在做项目的时候一直在用Pytho ...

  6. 容器云平台No.6~企业级分布式存储Ceph

    简介 ceph作为一个统一的分布式存储系统,提供了高性能,高可用性,高扩展性.ceph的统一体现在其可以提供文件系统.块存储.对象存储,在云环境中,通常采用ceph作为后端存储来保证数据的高可用性. ...

  7. DeRPnStiNK靶机渗透

    DeRPnStiNK靶机渗透 常规的信息搜集 扫到了phpmyadmin以及wordpress并在后台发现弱密码,即admin,admin 这里对wordpress进行了扫描: 扫描插件: searc ...

  8. python-生成器(generation)

    阐述思路是:迭代(iteration).迭代器(iterator).生成器(generator). 迭代 迭代是重复反馈过程的活动,其目的通常是为了接近并到达所需的目标或结果.每一次对过程的重复被称为 ...

  9. Harbor介绍与企业级私有Docker镜像仓库搭建

    Harbor介绍与安装部署,并实现通过http和https协议[自签发SSL证书]访问,客户端如何通过Harbor镜像仓库实现镜像的上传[推送]与下载[拉取]. Harbor介绍 Harbor,是一个 ...

  10. Markdown 1.0.1

    简介 Markdown 是由 John Gruber 于2004年开发一种轻量级标记语言,它是一个面向web作者的 text-to-HTML 转换工具.Markdown编辑器允许您使用纯文本格式编写, ...