Web のフロントエンド界隈の方々におかれましてはほぼ毎日書いているであろう CSS (Cascading Style Sheets) ですが、1994年 10月 10日に、Opera Software 社の CTO、ホーコン・ウィウム・リー (Håkon Wium Lie) 氏によって提案 (Cascading HTML Style Sheets -- A Proposal) されてから今年で 20年が経過したそうです。
Dev.Opera Blog では、CSS 20周年に際して、リー氏のインタビューを掲載しています。
CSS was conceived twenty years ago. Are you happy about how your baby, child and teenager has turned out?
Yes, I'm very happy with CSS. CSS is a cornerstone web specification and web pages are more beautiful as a result of CSS being there. The fact that HTML is still alive and well is also a testimonial to the success of CSS. As with all youngsters, however, there is room for improvement.
CSS: It was twenty years ago today -- an interview with Håkon Wium Lie : Dev.Opera から引用
CSS が 20歳になったけどどうよ? と聞かれたリー氏ですが、「改善の余地はあるが、とても満足している」 とのこと。
What's the biggest mistake you (and Bert) made?
I devote a chapter in my PhD thesis to problems in CSS. There are some, even self-inflicted ones. But the biggest problem CSS1 experienced was not in its design (which is pretty good, if you ask me), but rather in the initial implementations. Jeffrey Zeldman described the situation:
...中略...
Microsoft and Netscape both deserve some blame, but we -- me, Bert, W3C -- could have avoided many problems by producing a test suite along with the CSS1 specification. The first real CSS test appeared in October 1998 when Todd Fahrner published his Acid test. The test was creative, visual, and developers could immediately see whether they passed the test or not. In the beginning, no browsers passed. But then, with a strong push from the CSS community, things started to improve. The WaSP played a key role in assuring support for standards.
CSS についてあなた ("and Bert" とあるのは Bert Bos 氏のこと) が最大の失敗だったと思っていることはある? との質問には、「CSS の設計に関して大きな問題はなかったと思うけど、CSS1 の仕様を作ったときに一緒にテストスイートを作らなかったのは失敗だった」 と語っています。「テストスイートがあれば、多くの問題 (ブラウザごとの実装差異の問題など) を避けられたのに」 とも。
「トッド・ファーナー (Todd Fahrner) 氏によって最初のテストスイート (Acid1) が公開されたのは 1998年 10月ですが、これよって開発者は初めて自分の実装が正しいかをテストすることができるようになった。」、「CSS の標準仕様が広くサポートされるために WaSP (The Web Standards Project) が果たした役割は大きい」... 云々。
その他、box-sizing: border-box;
についてや、絶対配置 (position: fixed;
) が仕様に追加された経緯、SASS や LESS などのプリプロセッサなどにも話は及んでいます。
Finally, is CSS still up to the job? Or should we try to move to another model -- for example, Grid Style Sheets?
...中略...
Returning to your question: is CSS still up for the job? I think so. I don't see anything on the horizon that makes me think otherwise. New ideas will come along, but they will extend CSS rather than replace it. I believe that the CSS code we write today will be readable by computers 500 years from now.
最後に、「CSS はこれからも現役であり続ける? それとも別の新しいやり方に置き換わるのかな?」 と質問されたリー氏は、「現役であり続けると思う。新しいアイデアが出てきたとしても、CSS を置き換えるのではなく拡張していく。今日書かれた CSS コードは、500年後のコンピュータでも変わらず読めることを信じてるよ」 と答えています。