日期:2013-08-16  浏览次数:21274 次

  HTML 5 最近风头大起,争论不断,如今又来了一个 CSS 2.2

  的确,CSS 3 拖的时间实在太长了…… Andy Budd 认为它之所以迟迟不能定稿是由于贪多嚼不烂(有 40 个模块),WEB 的变化越来越快,以前定下来的东西过了一段时间发现又需求修正,这样怎样改也改不完,何时是个尽头。总想让本人完满,总想尽可能考虑周全未来的种种情况,结果忽略了当前真正亟待处理的问题,这是 CSS 3 目前定稿最大的妨碍。于是 Andy 提议将 CSS 3 中的部分急迫内容,或者说用来满足一些常见需求的内容加入 CSS 2.1 中,升级为 CSS 2.2 以促进新的 CSS 版本推出。

  不过团体感觉,这个没有浏览器厂商的合作,就算 W3C 定了个 CSS 2.2 出来又能如何?Mozilla 和 Opera 倒是可以持乐观态度,但是 IE 呢?占浏览器市场份额最多的 IE 呢?且不说 IE7 的份额还很少,就是还在计划中的 IE 8 目前的目标也仅仅是完善对 CSS 2.1 的支持!CSS 2.2 出来了谁能保证它的命运不像 2.1 一样凄惨?

  The early pace of CSS development was pretty impressive. First proposed by Hakon Lie in Oct 1994, CSS1 became one of the first W3C recommendations in Dec 1996. Nipping at its heals, CSS2 became an official recommendation in May 1998, just 18 months later. By June 1999 the first 3 draft modules of CSS3 had been published, and in their ground breaking book published that same year, Bert Bos and Hakon Lie postulated that CSS3 would arrive sometime in late 1999.

  Over 7 years later, and we’re still waiting. This begs the question, what went wrong?

  For a recent conference, I decided to do a talk on CSS3. While researching all the cool CSS3 features modern browsers support, I became intrigued why things were taking so long. I started reading up on the W3C, how it was structured, how you became a member and exactly who was on the CSS working group. I started speaking to existing members and invited experts, reading blog posts from critics and people who had resigned, and looking at every bit of public information I could find.

  Organisations pay thousands of dollars to join the W3C, and in return get to set the agenda on forthcoming technologies. While most of the companies involved are eager to shape the future of the internet in a positive direction, they all have their own agendas. Some obviously want to build better browsers, while others are worried about backwards compatibility and engineering problems. Some organisations have a vested interest in technologies such as SVG, while others are more concerned with opening the web up to different platforms like mobile phones and TV. By paying to be a member of the W3C, companies are able to get some of the brightest minds in the industry working on the issues important to their business, and who can blame them?

  CSS3 has been in development in it’s current form since early 2000. There are currently 5 modules in “Candidate Release” status, and a further 6 are in “Last Call” status. This sounds good, until you realise that the selectors module was in “Candidate Release” as far back as 2001, and got rolled back to “Last Call” in 2005. Some of the current modules are set to be rolled back, while other modules like the “Box Model” module haven’t been touched since 2002. Of the 40 or so modules, only the TV profile and media queries modules are nearing completion. Lucky us.

  There are various reasons why this is taking so long. Many of the issues are technical and can’t be avoided; problems when testing, issues with backwards compatibility and bugs with browser implementation. However there also seems to be a lot of politics involved. Discussions are getting bogged down in the same old arguments that occur time and again, priorities have been given to the wrong areas, and companies have been pursuing their own personal agendas.

  Despite being broken down into separate modules, the scope of CSS3 is vast. As well as trying to look at the needs of the current web, the W3C are trying to anticipate the future. One of the big issues is internationalisation, which brings up problems most of us haven’t even heard of before. Tibetan style text justification anybody? Also with the project taking so long, the W3C are working in a constantly shifting environment. What may have been true about the web back in 2000, may not be true today, next year or in the next decade.

  My fear is that the W3C has bitten off more than it can chew, and this