首页 > WEB开发 > CSS+DIV > CSS之父:Web事业未竞,尚需前赴后继
2016
04-24

CSS之父:Web事业未竞,尚需前赴后继

  提到Web设计,很少有人的影响会超过Håkon Wium Lie。在CERN与Web之父Tim Berners-Lee一起工作的Lie,发明了CSS。

  如果没有那次大胆的提议,我们今天谈论的Web设计很可能是完全不同的一回事。正如Lie所说:“这个技术可能会被一家公司占有,比如法国电信,比如微软。很可能会掌控在私人手中。”

  “当时的Web还比较混乱,有不少乱七八糟的东西,但同时那也正是人性的反映。而且所有人都可以免费使用。”

  遭遇危机

  这里面有啥故事呢?这篇文章可以帮年轻的同学补一点Web的历史知识。首先是HTML,由Tim Berners-Lee在1990年时发明,当时非常简单。没有涉及展示,只关注语义。“可以在语音合成器或屏幕上展示HTML,以完全不同的方式展示,”Lie说。“它并没有说只能针对PC屏幕或手机屏幕,而完全是通用的。”

  1993年发布的浏览器Mosaic就是用HTML编写网页的。“HTML也吸引了其他人,包括设计师,于是这些人说:‘挺好的,就是字体太难看了,灰色背影也不好,我喜欢20点的Helvetia,红色的……’但他们实现不了,因为HTML只能让他们声明元素,不能让他们控制展示。”

  Lie意识到,如果Web想获得更广泛的成功,就需要给设计师提供一个桥梁,连接两个世界。“我们希望大家使用HTML。但我们也想让大家使用字体、颜色、排版、布局、留白、阴影什么的。否则这些人就不会用HTML。”

“要是没有CSS,Web至今可能只是一个巨大的传真机。”

  如果当初没有想到制定CSS规范,设计师很可能转投他处,Lie说。HTML很可能会变成与PDF类似的一种页面描述语言。没错,当时就有设计师把文档转成图片。“因为转成图片意味着可以控制每一个像素,因此就可以实现想要的字体、颜色。现在你还可以看到这种情况存在。如果这种做法成为主流,那Web可不就成了一个巨大的传真机了吗?”

  Lie明白在HTML作为标准的情况下,有人可能会另辟蹊径以实现自己渴望的设计效果。“因此提出CSS的初衷并非真的要让人去实现酷炫的效果——而是要拯救HTML,”他解释道。“我们要确保的是一个基于文本的,同时也是基于语义的底层语言。”

  Lie产生了一种紧迫感。“就好像说:‘妈的,我们必须快想办法,否则HTML语言就要完蛋了。’”于是,他只用一两周时间就写出CSS规范的草稿。

  面向未来

  当然,Lie也不是一个人在奋斗。他也跟Berners-Lee讨论,虽然由于事务繁忙,后者不可能跟他探讨太多技术细节。“有一个非常活跃的邮件列表,也有人在之前提出过类似的建议,因此我也从那些建议方案中借鉴了不少东西。”

  Lie与另外一位计算机科学家Bert Bos合作将CSS发展为W3C推荐标准。同时为了展示和试验,把这个新标准集成到了Arena浏览器中。显然他做了一件大好事。CSS至今仍然是大多数网站,包括从那时起陆续出现的众多设备,在涉及展示时所用到的主要技术。

  这得益于先驱们面向未来的高瞻远瞩。“那时候谁也不知道将来会有那么多智能手机,但我们可以想到将来用这个标准的设备肯定不只PC。”

  最初的建议非常直截了当,比如就是利用那些对屏幕和语音合成器管用的属性。“最初的建议也涉及了音量和人声等阅读设备的属性。我们预感到了未来,但并不确切知道未来是什么样子。”

  CERN拥有众多各式各样的机器也是有利的一面。“Tim当时用的NeXT电脑,我用的是一台Sun计算机,Robert [Cailliau]用Mac。现实告诉我们必须得让Web在所有电脑上通用。”

  拯救Web

  1995年Lie离开了CERN,前往W3C开始4年的任期,之后才到Opera Software。虽然已经为推动Web发展奋斗了好多年,但如果你再问他Web是不是仍需要拯救,他还会坚定地说:“是的!革命尚未成功,同志尚需努力!Web事业未竞。我们还在创造历史。虽然Web已经诞生25年了,但它会长期发展下去,所以还有多事情要做。”

  他认为商业技术是对Web新的威胁,比如iPhone应用的开发技术,可以实现HTML和CSS实现不了的功能。不过,Web标准社区一直在致力于对抗商业技术的入侵。

  “多年来,手机应用可以访问相机,但Web应用却不行,”他说。“现在可以访问相机了,还可以访问位置信息、加速计了。因此从技术角度说,现在可以通过HTML实现大多数应用的功能了。可能现在还不方便做到判断页面朝向。我们还需要更多API以实现原生应用有的那些炫目的视觉效果,可以使用HTML和CSS实现。”

  如果CSS继续存在,那么对Lie而言,很明显它还会响应设计师对新工具的需求继续发展变化。这些变化会逐渐显现,但Lie最关心的,还是这些变化应该更多发生在CSS,而不是HTML领域。

  “HTML应该更多的是一种稳定不变的人类资源,”他说。“比如,维基百科的标记应该不变。我们会更新其中的内容,重新设计其外观。但标记始终那样,可以长期不变。”

  当然,CSS也有变臃肿的危险。“一些想在相对简单的设备上保证同样呈现的人已经发出了反对的声音,他们不希望增加太多新特性。”他承认。“在有些市场上,安卓手机还不多见,我们可以保证浏览器在这些设备上正常运行吗?Facebook用JavaScript重新实现了CSS,因为他们认为原生客户端和浏览器的功能太多了。这里需要掌握一个平衡。”Lie说。

  就目前来讲,他认为CSS的模块划分过细,并指出某些模块可能无法吸引浏览器实现者,有些模块本身或许并没有那么值得关注,某些模块最后可能归于失败。

  “通常,决定权都在能影响渲染引擎实现的人手里,而不在标准委员会之类的组织里。因为一个标准能不能真正成为Web标准,关键要看Blink或WebKit支不支持。”

  少就是多

  你怎么看Sass和Less?“我觉得它们有用,”Lie说。“实际上,如果它们出现得更早一点,那么有些功能应该内置到CSS里。这些功能的语法很不错。本来应该是这样的……确实很不错,本来应该搞成声明式的。”

“如果Sass和Less早点出现,或许可以把有些功能内置到CSS里面。”

  然而,Lie极力反对Adobe提出的CSS Regions(详情请看这里),也不同意使用所见即所得的网页工具。

  “如果我写CSS,我会在文本编辑器里写,不会在所见即所得的工具里写,”他说。“这种工具与Web设计还是有点格格不入。如果使用所见即所得的工具,那么必须有与页面匹配的显示器。这当然可能,或许现在还有人这么做,但我不这么设计网页。”

  接过接力棒

  总之,Web并没有“成功”,万里长征才刚刚迈出第一步。“还有几十亿人没有上过网呢,”Lie说。“仅仅是给所有语言提供字体也是一项巨大的工程。就算这项工程完工,设计师又会提出他们新的需求。到时候就会有人说:‘咱们应该这样做或那样做。’”

  在接下来的20年,Lie并不想冲锋陷阵,而打算退居二线。虽然他会密切关注CSS的发展,但他更希望新一代能够接过接力棒继续推动CSS发展。“我不希望有一天,有人说:‘咱们把HTML扔掉切换到新平台吧。’特别是不希望某些商业公司带头这么做。这样的话就太糟糕了,因为垄断时代又要开始了。”

  “大家应该没有忘记,在IE一手遮天的时代,微软不在乎什么Web标准,也不改bug,技术发展趋于停滞。这样的历史有可能重演。苹果和谷歌现在都很强,谢天谢地,总算有两家在!”

  文字Tom May,摄像Rob Monk

  原文:https://medium.com/net-magazine/interview-with-h%C3%A5kon-wium-lie-f3328aeca8ed#.ccdud8l3d

编程技巧