デザインの今と昔
今どきのWebサイトはテーブルレイアウトもフレームもなしで作成されることが多くなりました。そんなWebデザインの今と昔を整理しています。
テーブルレイアウト
テーブル(表)をレイアウト目的で使いデザインするやり方は、今や個人サイトを残すのみで、ほとんど使われなくなっています。(私が持っている2002年発行のホームページ素材集のテンプレートが全部テーブルレイアウトのデザインになっていますから約10年前は堂々と使っていたことになります)
今は「デザインはCSSで」が一般的です。
【memo】
もともとHTMLはテキスト書きを想定したものであり、デザインできるようには作られてはいませんでした。
多くの人がWebサイトにデザイン性を求めるようになると、タグを駆使して(自分で工夫して)作成するようになります。その中でも一番注目されたのが表を作る目的しかもたなかったテーブルです。
このテーブルを駆使すれば、きちっきちっとレイアウトできることに気づいたんですね。
しかし仕様書を無視した作成方法なのでブラウザが変わったとたん不具合を起こすのは当然のことでもありました。キレイに見えるのは表面だけ、機械的には文書にすらなっていないのでブラウザは解釈に苦しみ、特に音声ブラウザにとっては理解できるような代物ではありませんでした。
早くから「デザインはCSSでやりなさいよ」と言われてはいたのですが、肝心のブラウザがなかなかCSSに対応しなかったため、CSSではデザイン性のあるサイトは作成できないと信じる人も多かったです。
やがてブラウザの進化を待ってテーブルレイアウトは役目を終えたという感じです。
フレーム
登場したばかりの頃は奨励すらされていましたが、今や(少なくとも2005年からそうでした)「極力、使用を避けること」とされてしまった機能です。
今どきのサイトには横や上に常に表示されるメニューがあり、見かけはフレームを使っているように見えて、実は使用されていないことがわかります。
なぜこうも敬遠されるようになったのでしょうか。
その理由として「フレームは1URLにつき、1ページというWebの原則に背く」というのがあります。要するにWebとの相性が悪いからで、具体的にはどんな問題があるかというと、
- トップページをフレームとした場合、検索ロボットはフレームにある情報しか拾わないことがある(肝心のトップページ情報が検索ロボットに拾われない)
- テキストブラウザ、音声ブラウザに対応させるのが難しい。小画面にはさらに画面が分割されてしまい見にくくなるなど、ユーザー環境の影響を受けやすい。
- 検索サイトからフレーム内のページに直接アクセスされた場合、フレームが表示されないので、孤立したページとして表示されてしまう
- サイト内の全ページのURLが同じになるため使いにくい(リンク時、ブックマーク登録時、ページが表示されない時など)
- 印刷する時に、上手く印刷できないなどの原因となることがある
……ぶっちゃけアクセシビリティへの対応やCEO対策が進むにつれて廃れていった機能です。
(回避する手段はありますので絶対に使ってはならないというわけではないですが)
なお、フレームはHTML5で正式に廃止される予定です。
【memo】
レイアウトのためにフレームを使うことはNGとされています。例えばフレームを利用して上下左右に空白を作ろうとする作成方法がそれにあたります。(いないでしょうが)