探索CSS的起源与演变历程

发表时间: 2023-02-18 23:21

CSS 为什么会出现?

Cascading Style Sheets (CSS) , 汉语文字翻译为层叠样式表,它的出现就好比一篇好的文章需要有标点,段落,配图以及排版。古代的時候写文章是没有标点符号的,古人就需要学习断字的技能, 不然以中华汉字的博大精深会闹出很大的笑话,比如 “过路人等不得在此小便”,可以解释为 “过路人,等不得在此小便”, 而实际的意思却是 “过路人等,不得在此小便”。

科学技术发展实际上就是“术业有专攻”的一个过程,所以在每个领域里面会有许许多多的专业及分支,在计算机领域里面管这叫“Separation of Concerns”(SoC),把相关的聚在一起,不相关的剔除出去。网页前端开发也遵循这个道理,这样做的好处有很多:

  • 减少代码的冗余。 提高代码复用率(做相同的事情,用同一种方法,减少大脑的内卷)
  • 提高代码的可拓展性。 就像越简单的道理往往存在着大智慧一样,越简单的代码越容易被重复使用,就好比使用搜索引擎查找资料时,我们输入一个关键字会出来一串相关的匹配信息, 但当我们输入的字数越多出来的内容越少
  • 提高代码的稳定性。因为做相同一件事情,我们用同一种方法,轻车熟路,越用越有心得,即使遇到问题我们也会从容不迫的面对,因为熟悉。

网页开发也是遵循 Separation of Concerns 这个道理, 把不同使用目的的技术区分开: 一般在最终用户的浏览器上会呈现出来的是三种不同的技术:

  • 首先是HTML是用来展示文字内容
  • 其次是CSS 用于排版, 就像我们平常看的杂志一样,每一行有多少个文字,字体的大小/样式/颜色以及图片在放在哪个位置等
  • 最后是网页中的动态语言 JavaScript,这种语言可以用来帮助程序员 捕捉使用者在网页上的行为,比如点击按钮后会产生什么样的效果,例如我们输入用户名和密码时,网页会自动帮你验证这个用户名是否重名以及密码是否满足复杂程度的要求

CSS最早版本是在1994年诞生的, 然后在1996年发布他的第一个版本CSS1, 1998年CSS2,1999年CSS3, 由于越来越多的功能添加到CSS中,所以在1999年以后CSS把不同的功能划分为模块Module,每个模块独立更新, 这样做有两个目的:

  1. 模块化处理后大大的提高了开发和更新的进度(每个模块独立开发),也不会出现大版本更新(所有模块一起更新的情况)
  2. 对于网页中需要排版的元素进行唯一性标记,避免出现相同类型的元素,被错误的(不符合程序猿本意的)归为同一类进行相同格式的排版。 虽然我们每一个人在这个世界上是代表我们自己的唯一个体, 但会出现重名的这种情况,所以用身份证号码是用来标识我们的唯一一串代码,不会出现重复的情况。

今天就先聊到这里。