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. [LeetCode] 46. 全排列(回溯)

    ###题目 给定一个没有重复数字的序列,返回其所有可能的全排列. 示例: 输入: [1,2,3] 输出: [ [1,2,3], [1,3,2], [2,1,3], [2,3,1], [3,1,2], ...

  2. [Java核心技术]第九章-集合(Java集合框架、具体的集合、映射)

    9.1Java集合框架 一些有的没的 可以使用接口类型存放集合的引用.一旦改变了想法,只需要在调用构造函数的地方做一处修改. add方法用于向集合添加元素,如果添加元素确实改变了集合就返回true. ...

  3. Proxy使用详解

    文档:Proxy 基本使用就不赘述,看文档即可 通用 1.Proxy可以包装任何形式的对象:包括原生数组,函数,甚至另一个代理 2.代理实例中没有指定的handler,实际就是操作原对象target: ...

  4. 在windows下使用pip安装python包遇到缺失stdint.h文件的错误

    今天在windows上使用pip安装一个python包python-lzf时遇到如下的错误: fatal error C1083: Cannot open include file: 'stdint. ...

  5. ECMAScript6入门学习--第一天

    ECMAScript与javascript的关系 ECMA是是一个国际标准化的一个组织,规定了浏览器脚本的语言标准,在上个实际,javascript公司Netscape把javascript托付给EC ...

  6. openstack (共享组件) 时间同步服务

    云计算openstack共享组件——时间同步服务ntp(2)   一.标准时间讲解 地球分为东西十二个区域,共计 24 个时区 格林威治作为全球标准时间即 (GMT 时间 ),东时区以格林威治时区进行 ...

  7. 文件存到aws的S3后, 调用getimagesize失败分析

    一.问题 将图片在windows下用图片查看器修改后,上传到s3中,调用getimagesize获取图片信息总是返回false,其它图片正常: 代码如下: $fileName = 's3://sdk1 ...

  8. Java8之日期处理

    简介 Java8除了有较大更新的 lambda. Stream ,还推出了全新的日期时间API.Java之前处理日期.日历和时间的不足之处主要有: 日期类型为可变类型,非线程安全使其应用非常受限 没有 ...

  9. 刷题[MRCTF2020]Ezpop

    解题思路 打开一看直接是代码审计的题,就嗯审.最近可能都在搞反序列化,先把反序列化的题刷烂,理解理解 代码审计 Welcome to index.php <?php //flag is in f ...

  10. 从CPU缓存看缓存的套路

    一.前言 不同存储技术的访问时间差异很大,从 计算机层次结构 可知,通常情况下,从高层往底层走,存储设备变得更慢.更便宜同时体积也会更大,CPU 和内存之间的速度存在着巨大的差异,此时就会想到计算机科 ...