话题背景:2004年10月15日,闪客帝国[http://www.flashempire.com]根据网页标准对自己的网站进行了网站重构,从而成为了首个采用采用WEB标准的大型国内网站,引起业界一阵轰动。三天后,国内权威的程序员网站CSDN[http://www.csdn.net]也正式推出了采用WEB标准技术从构的新版网站。
而在国外,Bloger,ESPN,MACROMEDIA,MP3.COM等,都已经采用采用WEB标准的网站进行了重构。那么究竟什么是WEB标准,他究竟有什么魅力引得国内外那么多的网站对他推崇倍至呢?我们带着这些疑问,对闪客帝国的两位核心技术人员进行了专访。
访谈:边城浪子&Allan:采用WEB标准进行网站重构
网易学院: 请问你们是怎么想到要用XHTML+CSS2.0技术对闪客帝国进行重新构建的呢?
边城浪子: 这次改版已经酝酿了很长时间。在这期间,我们了解了很多的关于W3C标准的知识,闪客帝国的前身就是一个专注于技术的网站,我们觉得在这方面不应该落后。当然也考虑到浏览器友好以及维护的方便,所以,经过谨慎考虑,我们决定采用Web标准来开发下一个版本的闪客帝国。
Allan:最开始其实是通过一套来自出版社的未出版的书稿《网站重构》,当时出版社要求给这本书写些文章,后来仔细拜读了一下,发现WEB标准的确是有过人之处,又正逢闪客帝国准备第5次改版,于是开始考虑是否应该用WEB标准来做呢?
网易学院: 大概是什么时候开始计划重新构建的?
边城浪子: 是在改版正式开始之前。闪客帝国给飞思的《网站重构》写了一点书评。后来就想到,为什么我们这次不马上付诸实践呢?
网易学院: 应该说在中国用XHTML+css技术来构建网站还不是很成熟,特别是没有一个这样的后台程序支持,要重构,意味着一整套发布系统都要作出调整,甚至重新编写,是什么让你们下决心花这么大的代价来对闪客帝国进行重构呢?
边城浪子: 网站重构是今后很多网站要面临的问题,标准化永远不会是个错误,我们知道我们早晚会走这一步。所以,长痛不如短痛,所以,我们就下定决心了。
网易学院: 在重构过程中其他技术人员是什么态度?他们支持重构么?刚开始的时候,他们对于XHTML+CSS2.0技术掌握是什么程度?
Allan: 闪客帝国永远是一个求新求变的组织,无论是在论坛网站上还是公司,大家都是非常喜欢新技术的。个人认为XHTML+CSS2.0来说技术难度并不大,所以所有人都能很快进入角色。
网易学院: 我们了解到,在网站重构的过程中,遇到的技术问题是不少的,你们是怎么解决这些技术问题的呢?
边城浪子: 我们互相交流,不断测试,并且订阅了不少CSS邮件列表。更多的时候是查询google,还有就是参考人家已经做好的站点,比如:macromedia.com。
网易学院: 能列举一些BUG的解决办法么?
Allan:在使用的过程中,XHTML+CSS2.0式的页面结构在Mozilla下几乎没有出现过任何BUG,主要是在IE5和IE5.5中。因为这二种浏览器对标准支持得不是很好,因此出现不少问题,我总结以下主要有以下几点
盒模形问题 http://allan.flashempire.net/blog/archive/2004/09/28/152.aspx
IE6捉迷藏BUG http://www.positioniseverything.net/explorer/peekaboo.html
DIV互嵌的各种问题
http://allan.flashempire.net/blog/archive/2004/09/28/152.aspx
UL标签使用CSS控制在各种浏览器下表现不同的问题主要通过针对不同浏览器使用不同的CSS来解决,关于分别对待的方法参见Hide方法 http://www.w3development.de/css/hide_css_from_browsers/summary
IE5下DIV套A的一个不知名BUG http://allan.flashempire.net/blog/archive/2004/10/20/189.aspx
网易学院:采用XHTML+CSS重构后有什么明显的变化(优势)
Allan:(1)网站页面文件体积小了许多,可能就CSS大了一点。但很多界面共用,所以相对来说非常小。整个网站的页面平均只有以前的2/3。
(2)浏览器解析也比较快,虽然当时感觉DIV多层嵌套也需要嵌套解析,但是还是比表格布局的要快。
(3)再一个就是调整还算方便,一般一种类型的风格通过改CSS就能全面改动.
(3)还有一个明显的变化是写程序更方便了,由于XHTML担当的角色只有组织内容,因此程序员不需要拿CSS,只需要拿XHTML页面就能直接套程序,不分担心各种表格循环中需要判断<tr></tr>的东西,写程序的效率也非常高。修改起来很直观,而Builder人员只要专注于修改CSS就行了。以后无论是改内容还是改版式都非常方便,其实这个应该是使用WEB标准的核心目的-内容-设计-程序三者做到尽量完全分离
网易学院:CSDN也采用XHTML+CSS技术对他们的网站进行了重构,看起来越来越多的专业网站都走进了XHTML+CSS的阵营,那么请谈谈你对XHTML+CSS技术在中国的应用前景是怎么看的。
Allan:说起来很巧合,CSDN就是在闪客帝国改版后的第3天推出的。无可置疑的是这个肯定是以后的趋势,先不管是不是重构网站,其内容-设计-程序分离思路早在前几年就已经开始在软件开发领域得到大力推广,而且CSS2。0大规模使用早在就在各种CMS,ERP系统上经常出现。现在作为网站来讲使用这种结构进行重构是一个迟早的事情,关键是要看如何将网站的整体运作观念与WEB标准的技术结构有机结合,如果只是为了追求一个新技术而去使用是得不偿失的
边城浪子: 当然还会有越来越多的网站支持W3C标准,这只是个时间问题。当符合标准的网站凸现出标准网站的优势来的时候,应该会有一个网站重构的浪潮。
网易学院:对于国内一批的XHTML技术爱好者,你们给一点寄语吧。
边城浪子:说实话,实现Web标准没什么神秘的,也没有多艰苦。能够改变自己制作传统网页的思路,自己也会觉得欣喜。其实,要付出的只是学习,而收获则会很多。不过,还是有一句话要说,那就是:“网站标准化不是目的,努力做好自己网站的内容、让网站更好的为用户服务才是最终目的”
Allan:个人认为无论是XHTML还是css2.0他们的技术使用都是非常容易的,关键是要在不断的实践中找到一种如何与网站本身的内容结构体系进行结合的方式。内容与设计及程序分离后,更多的应该考虑的是,内容该如何组织了,怎样设计内容结构最合理,XHTML和CSS只是这个内容组织中的一个链条而已。有了WEB标准重构的技术,更多的精力应该是去考虑如何整合内容并使用合理的标签去组织这些内容,并易于扩展和使用,而不是一味的追求CSS和XHTML的特别效果。