Web制作コラム

CSSの歴史|テーブルレイアウトからGridまで、何がどう変わったか

Web の歴史

見た目をHTMLの表組みで作っていた時代から、いまのGridまで。何がきっかけで変わってきたのかと、古いサイトを改修するときに出会うものを整理します。

CSS が勧告されたのは 1996年です。それまで Web ページの見た目は HTML の table タグや font タグで作られていました。CSS の歴史は、見た目の指定を HTML から切り離していく過程そのものです。

テーブルレイアウトの時代

1990年代後半から2000年代前半まで、段組みは table で作られていました。左にメニュー、右に本文という2列は、1行2列の表です。余白は幅1pxの透明な画像(スペーサーGIF)を引き伸ばして作っていました。

この書き方は、見た目と中身が完全に混ざります。レイアウトを変えるには HTML を組み直すしかなく、読み上げソフトは表として読んでしまいます。いまでもメールの HTML では table が使われますが、それはメールソフトの対応が限られているためで、Web ページでは理由がありません。

float の時代

2000年代半ばから、段組みは float で作られるようになります。要素を左右に寄せて回り込ませる指定で、本来は画像に文章を回り込ませるためのものでした。段組みに転用したため、回り込みを解除する clearfix という決まり文句が必要になります。

改修案件で clearfix というクラスを見かけたら、その時代に作られたCSSです。高さの計算が中身に依存するため、片方の列だけ背景色が途切れるといった崩れ方をします。

CSS3 とベンダープレフィックス

CSS3 は、ひとつの大きな仕様ではなく、角丸・影・アニメーションといった機能ごとのモジュールに分かれて策定されました。そのため「CSS3 に対応している」という言い方は、実際には機能ごとに状況が違います。

この時期、仕様が固まる前の機能を試すために -webkit- や -moz- を頭に付ける書き方が広まりました。いまも古いCSSに残っていますが、現在のブラウザでは不要なものがほとんどです。

Flexbox と Grid

  • Flexbox … 1方向に並べるための仕組み。2015年前後から実用的に使えるようになった
  • Grid … 行と列を指定する仕組み。2017年に主要ブラウザが一斉に対応した

この2つで、段組みのために float を使う理由がなくなりました。「段組みのための仕組みで段組みをする」状態に、CSS が始まってから20年かけてたどり着いたことになります。

いま何を基準に書くか

CSS にはバージョン番号が振られなくなり、機能ごとに仕様が更新され続けています。そのため「CSS4 に対応」という基準は存在しません。使えるかどうかは機能ごとに調べることになります。

実務では、主要ブラウザの直近2〜3年のバージョンで動くかどうかを基準にすることが多い形です。対応範囲を先に決めておかないと、確認の手間も修正の範囲も見積もれません。

古いサイトを引き継ぐとき

  1. table で段組みされていないか(されていれば作り直しの判断が要る)
  2. clearfix が使われているか(float 時代のCSS)
  3. ベンダープレフィックスがどれくらい残っているか
  4. リセットCSSが何を使っているか(時代によって中身が違う)

当社では、改修のご相談をいただいた際にこの4点を確認し、部分的な修正で足りるか、CSSから組み直したほうが早いかをお伝えしています。

「Web の歴史」のコラム

この記事と同じカテゴリの記事です。

一覧に戻る

SERVICES

WordPressとECサイトの制作、
まとめてご相談いただけます

WordPress

WordPress制作・構築代行

デザインデータやコーディング済みHTMLを、オリジナルテーマとして構築します。プラグイン開発も対応。

構築基本費用 50,000円

詳しく見る
コーディング

コーディング代行

デザインデータをHTML/CSSに起こします。WordPress化まで通しでも、コーディングだけでも承ります。

1ページ 15,000円〜

詳しく見る
React

Reactコーディング代行

デザインデータをReactのコンポーネントとして実装します。既存アプリへの画面追加・UI改修だけでも承ります。

1ページ 18,000円〜

詳しく見る
Next.js

Next.js制作・コーディング代行

検索エンジンに読まれるHTMLを返せるNext.jsで構築します。静的書き出しでレンタルサーバーでも公開できます。

1ページ 18,000円〜

詳しく見る
EC / WordPress

WelcartでのECサイト構築

WordPress専用のネットショップ構築プラグイン。機能面まで踏み込んだカスタマイズができます。

デザイン制作+構築 一式 120万円〜

詳しく見る
EC / EC-CUBE

EC-CUBEでのECサイト構築

国産オープンソースのECパッケージ。決済・受注・在庫まわりを業務に合わせて作り込めます。

デザイン制作+構築 一式 120万円〜

詳しく見る
EC / ASPカート

ECサイト制作代行

Shopify・MakeShop・カラーミーなどのカートに、オリジナルデザインを組み込みます。

構築基本費用 100,000円

詳しく見る

制作のご相談も承っています

デザインデータと画面数をお知らせいただければ、お見積りと納期をご提示します。

直近2週間の受付状況制作のリソース

9/29(月)〜10/3(金)残りわずか
10/6(月)〜10/10(金)余裕があります
Chatworkで相談する