趣味Web 小説 2003-04-27

テーブルレイアウト派を説得する難しさ

テーブルレイアウトに可能なことは、全部CSSでも(仕様によれば)再現できます。だから、見栄えの指定はすべてCSSにわたして、HTMLはStrictなものにしていこうよ、という話をするわけです。しかしこれに対して、例えば角丸テーブルはStrict+CSSデザインでは真似できないじゃないか、という意見があるわけです。私はここで、ううむ、と悩んでしまいます。

テーブルレイアウトをわかりやすく使いやすいと思う方が多いのは、HTML文書としての妥当性について端っから問題としていないからです。その意味で、Strict+CSSデザインと比較して制約が非常に少ないといえます。CSSでもたしかにテーブルにできることのひとつひとつは真似できます。いざとなれば絶対配置などを駆使すればどうにかなるわけです。けれども、StrictなHTMLにこだわろうとすると、いささか話が面倒になります。はっきりいって、できないことだらけとなっていくのです。

見た目のためだけのimg要素も内容のないtd要素も使いまくる、HTMLの理念を無視して見た目ばかり追及するのがテーブルレイアウトの発想です。StrictなHTMLであれこれの利点を確保しつつ、見た目でも全面的に勝とうとするのは無理があります。9つのtd要素を駆使する角丸テーブルを、p要素一つをCSSで装飾するだけで再現できるほど甘くはないわけです。背景画像を複数指定できればよい、という意見もありますが、その場合、背景画像の順番を指定することも必要ですよね。これはなかなか難しいものがあると思います。

まあ、ひとつのHTML文書であらゆる環境に対応しようというそもそもの発想に問題があるのでしょう。それは夢のような話であり、現実には人々の欲求をうまく吸収できなかったわけです。目が見え、パソコンを使いこなせる人のほとんどは、結果としての見た目ばかりに注目します。だから、StrictなHTMLにこだわれば、基本的に角丸テーブルは再現できませんよといわれたら、じゃあテーブルレイアウトでいいや、と思います。

結局、企業サイトなどはサーバ上にXML文書をおき、リクエストしてきたUAで条件分岐して、それぞれに最適化したHTML文書を送信するのが標準的な形になっていくのだろうと思います。IEなら見た目だけを考えたテーブルレイアウトでいい、音声系UAにはStrictなHTMLで記述された文書を出そう、とかそういった発想。素人はなかなかそんなの真似できませんから、これまで通り自分の想定する読者層に特化したHTML文書を作成するのでしょうね。つまり今後も、見た目第一でおかしな記述がいっぱいのHTML文書は減らないでしょう。

この記事を読みつつ、ふと思ったことを書きました。CSSは既に普及しまくりですけれども、HTMLの理念を踏まえた正しい使い方ってのはいつまでたっても大して広まらないだろうなあと思います。

Information

注意書き