CSS自体の構造化は置いてけぼり?
現状、CSSセレクタで、ol
の子孫にul
があった場合のスタイルを指定するには以下のようにするらしい。(例に意味がないのは気にしないでください。)
ol { color: #f00; } ol ul{ color: #000; }
たしかにこれぐらいの規模であればまだ簡単にメンテナンスできるだろうけど、http://2xup.org/log/2007/01/27-2051にあるような例は、怠惰なプログラマには苦痛ではないだろうか。例えば、こんな風に記述できたらもう少し楽なんじゃないだろうか(あくまでも例です。これはこれで問題がある仕様でもある)。
ol { color: #f00; ul{ color: #000; } }
CSSの目的は、HTMLは構造に徹し、CSSはプレゼンテーションに徹して役割を分離することだと理解していたが、肝心のCSSが構造的に記述できないのは問題だと思う。
実はCSS自体が構造的に問題あるものなんじゃないかと思った。CSSは現在のような多種のセレクタに対応させることはそれほど重要ではなくて、単純で大量の関係の記述を簡素で容易に記述可能にする方に進化していくべきだとも思っている。
当然こんなことは考えている人がたくさんいるだろうと思って調べてみたらやはりウィキペディアのCSSの項目にちゃんと書いてあった。やれやれ。
現状では、ちょっと面倒でもJavaScriptでstyleプロパティいじってしまうか、簡単なジェネレータを使った方が見通しがいいのかもしれない。もはや誰にも顧みられることのないJSSSなんかの方が解決が近かったのかも。