
6日でできる 新HTML&CSS入門|HTMLとCSSの歴史と進化
HTMLが情報の道を作り、CSSが表現の可能性を広げてきた。歴史をたどれば、現在のWeb制作がもっとよく分かる。
私たちが日常的に閲覧しているWebページは、HTMLとCSSという二つの技術によって支えられています。
HTMLは、見出し、段落、画像、リンクなど、Webページに掲載する情報の意味や構造を表すためのマークアップ言語です。一方のCSSは、文字の色や大きさ、余白、配置、背景、レイアウトなど、Webページの見た目を整えるためのスタイルシート言語です。
現在では、HTMLでページの構造を作り、CSSでデザインを整える方法がWeb制作の基本になっています。しかし、Webが誕生した当初から、この役割分担が完成していたわけではありません。
初期のWebは、研究者同士が文書を共有するための比較的シンプルな仕組みでした。その後、一般家庭へのインターネットの普及、ブラウザ同士の競争、Web技術の標準化、スマートフォンの登場などを経て、HTMLとCSSは大きく進化してきました。
Webの歴史には、便利な機能が増えたという技術的な変化だけでなく、異なるブラウザでも同じページを表示できるようにするための試行錯誤があります。
なぜHTMLとCSSを分けて記述するのか、なぜ古い要素や書き方が推奨されなくなったのか、なぜHTML5という固定された呼び方からLiving Standardへ移ったのか。こうした疑問は、歴史を知ることで理解しやすくなります。
ここでは、HTMLとCSSの誕生から、標準化、ブラウザ間の競争、HTML5とCSSの機能拡張、そして現在の継続的に更新される仕様までを、時代の流れに沿って見ていきます。
HTMLとCSSは異なる役割を持つ
歴史をたどる前に、現在のHTMLとCSSがどのような役割を担当しているのかを整理しておきましょう。
| 技術 | 主な役割 | 扱う内容の例 |
|---|---|---|
| HTML | Webページの内容と構造を表す | 見出し、段落、一覧、画像、リンク、表 |
| CSS | Webページの見た目や配置を整える | 色、文字サイズ、余白、背景、レイアウト、アニメーション |
| Webブラウザ | HTMLとCSSを解釈して画面に表示する | Chrome、Edge、Safari、Firefoxなど |
HTMLは、文章の各部分が何を意味するのかを示します。
たとえば、ページの中心となる題名は見出しとして、説明文は段落として、複数の項目は一覧として表します。ブラウザや検索エンジンなどは、このHTMLの構造を読み取り、ページの内容を理解します。
CSSは、HTMLによって構造化された内容を、どのように見せるか指定します。
同じHTMLであっても、CSSを変更すれば、文字の大きさ、背景、余白、並び方などを大きく変えられます。
このように役割を分けることで、情報の構造を保ちながら、デザインだけを変更しやすくなります。CSS2の仕様でも、文書の内容と表示方法を分離することで、Web制作やサイト管理を簡単にできるという目的が示されています。(W3C)
Webは研究者の情報共有から始まった
Webの誕生は1989年にさかのぼります。
当時、スイスにあるCERNでは、世界各地の大学や研究機関から多くの研究者が参加していました。しかし、研究に使用するコンピュータや文書の管理方法が異なっていたため、必要な情報を探したり共有したりすることが難しいという問題がありました。
そこで、CERNに勤務していたティム・バーナーズ=リー氏は、ネットワーク上の文書をリンクで結び付け、必要な情報へ簡単に移動できる仕組みを提案しました。これがWorld Wide Webの出発点です。
1989年にWebの構想が提案され、1990年にはWebサーバ、Webブラウザ、HTML、HTTP、URLなど、現在のWebにつながる基本技術が作られました。Webは、離れた場所にいる研究者同士が情報を共有するための仕組みとして開発されたのです。(CERN)
| 年代 | 主な出来事 |
|---|---|
| 1989年 | ティム・バーナーズ=リー氏がCERNでWebの構想を提案 |
| 1990年 | 最初のWebサーバ、Webブラウザ、Webページが作られる |
| 1991年ごろ | Webの仕組みがCERNの外へ広がり始める |
| 1993年 | CERNがWeb技術を広く利用できるよう公開 |
| 1994年 | W3Cが設立され、Web技術の標準化が本格化 |
CERNは1993年4月30日にWebの基本技術を自由に利用できる形で公開しました。この判断によって、特定の企業や組織だけに管理されない、開かれたWebが広がる大きなきっかけが生まれました。(CERN)
初期のHTMLは文書を結び付けるための言語だった
HTMLはHyperText Markup Languageの略です。
HyperTextは、文書の中に別の文書へのリンクを持たせ、情報同士を結び付ける仕組みを表します。Markup Languageは、見出しや段落など、文章の各部分に意味を付ける言語という意味です。
初期のHTMLで重視されていたのは、豪華なデザインではありませんでした。
研究文書に見出しや段落を設定し、関連する文書へリンクできるようにすることが中心でした。Webページ同士がハイパーリンクでつながることで、利用者は文書を順番に読むだけでなく、必要な情報を選びながら移動できるようになりました。
HTML、URL、HTTP、Webサーバ、Webブラウザが一緒に作られたことも重要です。
HTMLが文書の構造を表し、URLが文書の場所を示し、HTTPが文書を送受信するルールを決めます。WebサーバがHTMLを公開し、ブラウザがHTMLを取得して画面に表示します。
現在のWebは非常に多機能ですが、その基本には、文書を保存し、場所を指定し、通信で取得し、リンクで別の文書へ移動するという仕組みがあります。
図1:HTMLとWebが誕生した流れ

この図から分かること
Webは、最初から動画配信やオンラインショッピングを行うために作られたものではありません。
離れた場所にいる研究者が、文書を共有し、関連する情報へ簡単に移動できるようにすることが出発点でした。
HTMLは文書の構造とリンクを表し、URLは文書の場所を示します。HTTPはブラウザとWebサーバが情報をやり取りするための通信ルールです。
これらの技術が一つの仕組みとして組み合わされたことで、ネットワーク上の情報をブラウザから閲覧できるWebが生まれました。
初期のHTMLでは見た目の指定も混在していた
Webの利用者が増えると、単に文章を表示するだけでなく、文字の色や大きさを変えたり、画像を配置したりしたいという要望が強くなりました。
しかし、初期のWebには、ページ全体のデザインを体系的に管理する仕組みが十分に整っていませんでした。
そのため、HTMLに見た目を指定するための要素や属性が追加され、文書の内容とデザインの指定が同じファイル内に混在するようになりました。
小さなWebページであれば、それでも管理できます。しかし、同じデザインを使用するページが数十ページ、数百ページと増えると、文字色や余白を変更するだけでも多くのHTMLファイルを修正しなければなりません。
また、HTMLが文書の構造ではなく、見た目を作る目的で使われると、ページの意味が分かりにくくなる問題もありました。
| HTMLに見た目を混在させる場合の問題 | 内容 |
|---|---|
| 修正箇所が増える | 同じ指定を複数のHTMLで変更する必要がある |
| 構造が分かりにくくなる | 見出しや段落の意味より見た目が優先される |
| デザインを再利用しにくい | ページごとに同じ指定を繰り返すことになる |
| ブラウザ差が出やすい | 独自要素や属性への対応がブラウザごとに異なる |
| 管理が複雑になる | 内容とデザインの記述が一つの文書に集中する |
こうした問題を解決するために、文書の構造と見た目を分けて管理する考え方が求められるようになりました。
CSSはHTMLからデザインを分離するために生まれた
CSSの歴史は1994年に始まります。
当時CERNで働いていたホーコン・ウィウム・リー氏は、Web文書の見た目を指定するスタイルシートの仕組みを提案しました。
初期のWebには、新聞や雑誌のようなレイアウトを体系的に指定する方法が不足していました。そこで、HTMLとは別に、色、フォント、余白などの表示方法を指定する言語としてCSSの構想が生まれました。(W3C)
CSSはCascading Style Sheetsの略です。
Cascadingには、複数の場所から指定されたスタイルを、優先順位に従って重ね合わせるという意味があります。
Webページの制作者による指定だけでなく、ブラウザの標準設定や利用者側の設定などを組み合わせ、最終的に適用するスタイルを決めることがCSSの大きな特徴です。
1996年12月17日にはCSS1がW3C勧告として公開されました。CSS1では、フォント、色、文字間隔、余白など、現在のCSSにつながる基本的なスタイル指定が定められました。(W3C)
| 年代 | CSSに関する主な出来事 |
|---|---|
| 1994年 | ホーコン・ウィウム・リー氏がCSSの考え方を提案 |
| 1996年 | CSS1がW3C勧告になる |
| 1998年 | CSS2がW3C勧告になる |
| 2000年代以降 | CSSの仕様が機能別のモジュールとして発展 |
| 現在 | レイアウト、アニメーション、色、文字などの各モジュールが継続的に更新 |
CSSによってWebサイトを管理しやすくなった
CSSの登場によって、HTMLには文章の意味や構造を記述し、CSSには見た目を記述するという役割分担が可能になりました。
たとえば、Webサイト内のすべてのページで同じCSSファイルを使用すれば、見出しの色や本文の文字サイズをまとめて管理できます。
サイト全体のデザインを変更するときも、共通のCSSを修正することで、複数のHTMLへ変更を反映しやすくなります。
| HTMLが担当する内容 | CSSが担当する内容 |
|---|---|
| ページの見出し | 見出しの色や大きさ |
| 文章の段落 | 行間や文字サイズ |
| 一覧の構造 | 記号や項目間の余白 |
| 画像の意味と参照先 | 画像の大きさや配置 |
| ナビゲーションのリンク | 横並びや背景、装飾 |
| 表の行と列 | 枠線、背景色、セルの余白 |
構造とデザインを分離する考え方は、現在のWeb制作でも基本になっています。
HTMLをデザインのためだけに使うのではなく、情報の役割が伝わるように記述し、その上でCSSを使って見た目を整えることが大切です。
W3CがWeb技術の標準化を進めた
Webが急速に広がると、共通の技術仕様を作る組織が必要になりました。
そこで、ティム・バーナーズ=リー氏によって1994年に設立されたのがW3Cです。W3CはWorld Wide Web Consortiumの略で、企業、研究機関、専門家などが協力し、Web技術の標準を開発する組織です。
W3Cが公開する正式な標準は、W3C Recommendation、日本語ではW3C勧告と呼ばれてきました。
W3Cの仕様は、特定のブラウザや企業だけに都合のよい機能を作るのではなく、異なる環境でも同じ技術を利用できるようにすることを目的としています。W3Cは合意、公平性、公開性、品質などを重視した手続きを経て、Web標準を公開しています。(W3C)
| 用語 | 説明 |
|---|---|
| W3C | Web技術の標準を開発する国際的な組織 |
| Web標準 | 異なるブラウザや機器で共通して利用するための技術仕様 |
| W3C勧告 | W3Cの手続きを経て公開された標準 |
| 相互運用性 | 異なる製品や環境でも同じ仕組みを利用できる性質 |
| 仕様書 | 要素、属性、プロパティ、処理方法などを定義した文書 |
ブラウザの競争によって独自仕様が増えた
1990年代半ばになると、一般家庭や企業にもインターネットが広がり、Webブラウザの利用者が急速に増えていきました。
この時期には、Netscape NavigatorとInternet Explorerを中心に、ブラウザのシェアをめぐる激しい競争が起こりました。一般に、この競争は第一次ブラウザ戦争と呼ばれています。
各ブラウザは利用者を増やすために、新しい表示機能を次々と追加しました。
しかし、標準化される前の独自要素や独自機能も多く、あるブラウザでは正しく表示できるページが、別のブラウザでは崩れるという問題が発生しました。
| ブラウザ独自仕様が増えた場合の問題 | Web制作者への影響 |
|---|---|
| 同じHTMLの解釈が異なる | ブラウザごとに表示が変わる |
| 独自要素が追加される | 特定ブラウザ専用のHTMLが増える |
| CSSへの対応が異なる | レイアウトや文字の表示に差が出る |
| 不正確なHTMLの処理が異なる | エラー時の表示結果を予測しにくい |
| ブラウザ別の修正が必要になる | 制作や確認の作業量が増える |
この問題を完全になくすことは簡単ではありませんでしたが、W3Cによる標準化が、ブラウザ間の違いを減らすための共通の基準になりました。
HTML 3.2が当時の実装を整理した
1997年1月、HTML 3.2がW3C勧告として公開されました。
HTML 3.2は、当時のブラウザで広く利用されていた機能を整理し、HTMLの共通仕様としてまとめることを目的としていました。仕様の作成には、MicrosoftやNetscapeを含む複数の企業が関わっています。(W3C)
HTML 3.2は、すべてのブラウザ差を解消したわけではありません。
それでも、各社が個別に機能を増やしていた状況に対して、共通の仕様を示したことには大きな意味がありました。
その後、1997年にはHTML 4が続き、文書の構造、スタイルシート、スクリプト、アクセシビリティ、国際化などを考慮したHTMLへ発展していきました。HTMLの開発史でも、HTML 3.2の完成後、HTML 4が同じ1997年に続いたことが記録されています。(WHATWG HTML Living Standard)
CSS2で対応できる表現が広がった
CSS1の公開から約1年半後となる1998年5月、CSS2がW3C勧告として公開されました。
CSS2では、CSS1の基本的なスタイル機能に加えて、要素の配置、印刷向けの指定、表のレイアウト、メディアに応じたスタイルなど、より幅広い機能が定義されました。(W3C)
| CSS1を基礎として発展した内容 | 概要 |
|---|---|
| 要素の配置 | ページ内での位置関係を調整する |
| メディア対応 | 画面や印刷などに応じて表示を変える |
| 表の表示 | 表に関するレイアウトを指定する |
| フォント指定 | 利用するフォントの考え方を拡張する |
| 視覚以外の媒体 | 音声などを含む複数の媒体を考慮する |
ただし、仕様が公開されても、すべてのブラウザがすぐに完全対応したわけではありません。
Web制作者は、どの機能が各ブラウザで利用できるのかを調べながら制作する必要がありました。
図2:ブラウザ競争とWeb標準化

この図から分かること
ブラウザ同士の競争は、Webの機能を増やす原動力になりました。
一方で、それぞれのブラウザが独自の機能を追加すると、同じHTMLやCSSでも表示結果が異なる問題が起こります。
Web制作者は複数のブラウザに合わせて個別の修正を行わなければならず、制作や保守の負担が大きくなりました。
W3CによるHTMLやCSSの標準化は、異なるブラウザが同じルールを共有し、共通のHTMLやCSSをできるだけ同じように解釈できる環境を作るために進められました。
XHTMLではより厳密な文法が目指された
HTML 4の後、W3CはHTMLをXMLの文法に合わせて再構成する方向へ進みました。
その中で生まれたのがXHTMLです。
XHTMLでは、要素を正しく入れ子にする、終了タグを省略しない、要素名を小文字で記述するなど、HTMLよりも厳密な書き方が求められました。
| HTMLと比べたXHTMLの主な特徴 | 内容 |
|---|---|
| 厳密な入れ子 | 開始タグと終了タグの関係を正しくする |
| 終了タグ | 原則として省略しない |
| 要素名と属性名 | 小文字で記述する |
| 属性値 | 明確に値を指定する |
| 空要素 | XMLの規則に合わせて閉じる |
厳密な文法は、文書を機械的に処理しやすくするという考え方につながっていました。
しかし、実際のWebには、古いHTML、文法上の誤りを含むページ、ブラウザ独自の動作などが大量に存在していました。既存のWebページとの互換性を保ちながら、Webアプリケーションとしての機能も発展させる必要がありました。
そのため、HTMLを現実のWebに合わせて進化させようとする新しい動きが生まれます。
WHATWGがHTMLの進化を再び進めた
2004年、Apple、Mozilla、Operaの関係者によってWHATWGが設立されました。
WHATWGはWeb Hypertext Application Technology Working Groupの略です。
当時、W3CがXHTMLを中心とする方向へ進む一方で、WHATWGは、既存のHTMLとの互換性を保ちながら、Webアプリケーションに必要な機能を発展させることを重視しました。(WHATWG)
WHATWGの取り組みは、後のHTML5へつながります。
Web上には膨大な数の既存ページがあるため、理想的な新言語へ一度に置き換えるのではなく、現在のブラウザやWebページがどのように動いているかを確認しながら仕様を作る必要がありました。
| 標準化で重視された考え方 | 内容 |
|---|---|
| 後方互換性 | 既存のWebページを引き続き表示できるようにする |
| 実装可能性 | ブラウザが現実的に実装できる仕様にする |
| エラー処理 | 不完全なHTMLをブラウザがどう処理するか定義する |
| Webアプリ対応 | 入力、保存、動画などの機能を拡張する |
| 相互運用性 | ブラウザごとの動作の違いを減らす |
HTML5は文書とWebアプリの機能を広げた
HTML5は、従来のHTMLを発展させ、Webページだけでなく、Webアプリケーションにも対応しやすくすることを目指した仕様です。
W3C版のHTML5は、2014年10月28日に正式なW3C勧告となりました。HTML5はHTMLの第5の大きな改訂として位置付けられ、新しい要素やAPI、ブラウザ間の相互運用性を高めるための明確な処理規則が盛り込まれました。
HTML5では、ページ内の情報の役割をより明確に表す要素が増えました。
| HTML5で広く知られる要素や機能 | 主な役割 |
|---|---|
| header要素 | ページや区画の導入部分を表す |
| nav要素 | 主なナビゲーションを表す |
| main要素 | ページの主要な内容を表す |
| article要素 | 独立して扱える記事などを表す |
| section要素 | 内容のまとまりを表す |
| footer要素 | ページや区画の末尾情報を表す |
| video要素 | 動画を組み込む |
| audio要素 | 音声を組み込む |
| canvas要素 | スクリプトを使って図形などを描画する |
HTML5より前にも、プラグインなどを利用して動画や高度な機能を提供することはできました。
HTML5では、動画や音声などをHTMLの標準的な要素として扱えるようになり、ブラウザが共通の方法で実装しやすくなりました。
また、ブラウザが不完全なHTMLを受け取ったときの処理方法も細かく定義されました。これにより、ブラウザごとの解釈の違いを減らし、同じHTMLをより一貫して扱うことが目指されました。
HTML5とレスポンシブWebデザインは同じものではない
HTML5の特徴として、スマートフォンへの対応が挙げられることがあります。
ただし、HTML5だけで画面幅に応じたレイアウトが完成するわけではありません。
パソコン、タブレット、スマートフォンなど、異なる画面幅に合わせて表示を調整するレスポンシブWebデザインでは、HTMLの構造に加えて、CSSのメディアクエリや柔軟なレイアウト機能が重要になります。
| 技術 | レスポンシブ対応での役割 |
|---|---|
| HTML | 情報を意味のある構造に整理する |
| viewportの指定 | モバイル端末で表示領域を適切に扱う |
| CSSメディアクエリ | 画面幅などの条件によってスタイルを切り替える |
| Flexbox | 要素を柔軟に一方向へ配置する |
| Grid | 行と列を使ってレイアウトを構成する |
| 可変サイズ | 画面幅に合わせて画像や領域を伸縮させる |
HTML5の普及期とスマートフォンの普及時期が重なったことで、HTML5とレスポンシブ対応が一つの変化として説明されることがあります。
しかし実際には、HTML、CSS、ブラウザの表示設定など、複数の技術を組み合わせて実現します。
CSS3という呼び方とモジュール化
CSS3は、CSS2に続くCSSの新しい世代を表す言葉として広く使われてきました。
しかし、CSS3という一つの巨大な仕様書が完成し、その後CSS4へ進むという単純な形ではありません。
CSSは機能ごとに仕様を分割するモジュール方式へ移行しました。色、背景、変形、アニメーション、レイアウトなどの仕様が、それぞれ異なる速度で開発されます。
そのため、現在はCSS3やCSS4という全体の固定バージョンよりも、CSS Grid Layout、CSS Flexible Box Layout、CSS Colorなど、個別のモジュール名とレベルで仕様を扱います。W3CのCSS Snapshotも、現在のCSSを複数の仕様の集合として整理しています。(W3C)
| CSSのモジュールや機能 | 可能になった主な表現 |
|---|---|
| Backgrounds and Borders | 角丸、複数背景、背景サイズなど |
| Color | さまざまな色の表現や透明度 |
| Transforms | 要素の移動、回転、拡大、縮小 |
| Transitions | 状態の変化を滑らかに見せる |
| Animations | キーフレームを使って要素を動かす |
| Media Queries | 画面幅や出力環境に応じてスタイルを変える |
| Flexbox | 一方向の柔軟なレイアウトを作る |
| Grid | 行と列を使った二次元レイアウトを作る |
すべての機能が同じ時期に登場したわけではありません。
一般にCSS3の機能として紹介される内容には、その後に発展した個別モジュールも含まれています。学習するときは、CSS3という一つの完成品を覚えるより、目的別のCSSモジュールが継続的に更新されていると考えるほうが、現在の仕様に近い理解になります。
CSSによる装飾の可能性が大きく広がった
初期のCSSは、文字、色、余白など、比較的基本的なスタイルが中心でした。
CSSの機能が拡張されると、以前は画像編集ソフトやJavaScriptなどに頼っていた表現の一部を、CSSだけで作れるようになりました。
| 表現 | CSSが発展する前によく使われた方法 | CSSによる方法 |
|---|---|---|
| 角丸の枠 | 角の画像を組み合わせる | border-radius |
| グラデーション | 画像として作成する | linear-gradientなど |
| 影 | 影付きの画像を使う | box-shadowやtext-shadow |
| 状態変化 | JavaScriptや画像の切り替え | transition |
| 簡単な動き | JavaScriptやアニメーション画像 | animation |
| 複雑な段組み | table要素や細かな位置調整 | FlexboxやGrid |
CSSで表現できる範囲が広がったことで、画像の使用量を減らしたり、画面幅に応じてレイアウトを変えたりしやすくなりました。
ただし、CSSで高度な表現ができるからといって、すべての要素を動かしたり、装飾を増やしたりすればよいわけではありません。
利用者が情報を読みやすく、操作しやすいデザインにすることが重要です。
図3:HTML5とCSSの進化で広がったWeb表現

この図から分かること
初期のWebページは、文章、見出し、リンクなどを中心としたシンプルな文書でした。
HTMLの進化によって、文書の各部分の意味をより明確に表したり、動画や音声などを標準的に扱ったりできるようになりました。
CSSの進化によって、色や文字だけでなく、柔軟なレイアウト、画面幅への対応、滑らかな変化やアニメーションなども指定できるようになりました。
現在のWebページは、HTML5だけ、またはCSSだけで作られているのではありません。
意味のあるHTMLの構造と、複数のCSSモジュール、ブラウザの機能などを組み合わせることで、多様な端末で利用できるWebサイトが作られています。
HTMLは固定バージョンからLiving Standardへ移った
HTML5以降、HTMLの標準化方法は大きく変わりました。
以前は、HTML 3.2、HTML 4、HTML5のように、ある時点で仕様をまとめ、番号を付けて公開する方法が使われていました。この方法はスナップショット方式と考えられます。
一方、WebブラウザやWebアプリケーションは継続的に変化します。
新しい機能や問題点が見つかるたびに、次の大きなバージョンが完成するまで待つ方法では、実際のWebの変化に追い付きにくくなりました。
そこでWHATWGは、HTMLを継続的に更新するHTML Living Standardとして管理する方法を採用しました。
Living Standardは、完成した仕様を長期間固定するのではなく、ブラウザ開発者、Web制作者、ツール開発者などからの意見や実装状況をもとに、継続的に修正や機能追加を行う標準です。(WHATWG)
| 従来の固定バージョン | Living Standard |
|---|---|
| HTML 4やHTML5などの番号を付ける | 基本的にHTMLとして継続更新する |
| ある時点の仕様を固定して公開する | 必要に応じて仕様を修正する |
| 次の版まで変更をまとめる | 変更を段階的に反映する |
| 仕様書の区切りが明確 | 常に最新状態へ更新される |
| 学習時に版を意識しやすい | 現在有効な仕様を確認する必要がある |
2019年にHTML仕様の一本化が進められた
W3CとWHATWGは、HTML5の開発過程で協力した時期がある一方、異なる方針でHTML仕様を公開していた時期もありました。
W3Cは安定した時点の仕様を勧告として公開する方法を重視し、WHATWGは継続的に更新するLiving Standardを重視していました。
複数のHTML仕様が存在すると、ブラウザの開発者やWeb制作者が、どの仕様を基準にすればよいのか分かりにくくなります。
2019年にはW3CとWHATWGの間で合意が結ばれ、HTMLとDOMについて、WHATWGのLiving Standardを中心とした一つの仕様へ協力していく方針が明確になりました。(W3C)
現在、HTMLの中心的な仕様はWHATWGによるHTML Living Standardです。WHATWGは2004年からHTMLを維持、発展させており、現在も仕様を継続的に更新しています。(WHATWG)
現在はHTML5よりHTMLと呼ぶことが多い
現在でも、書籍、講座、Web制作の現場などでHTML5という言葉は広く使われています。
HTML5以前のHTMLと区別したり、video要素やarticle要素などを含む現代的なHTMLを説明したりするときには、HTML5という表現が分かりやすい場合があります。
ただし、現在の標準仕様はHTML6の完成を待っているわけではありません。
HTML Living Standardとして継続的に更新されているため、現在の技術を指す場合は、単にHTMLと呼ぶのが自然になっています。
| 表現 | 主な使われ方 |
|---|---|
| HTML5 | 以前のHTMLとの違いや2014年前後の大きな変化を説明するとき |
| HTML | 現在のHTML全体を指す一般的な表現 |
| HTML Living Standard | 現在の継続的に更新される公式仕様を明確に示すとき |
| CSS3 | CSS2以降に広がった機能をまとめて説明するとき |
| CSS | 現在の複数のCSSモジュール全体を指すとき |
CSSについても同様に、現在のCSS全体を一つの番号で表すより、CSSまたは個別のモジュール名で呼ぶことが一般的です。
Web標準によって異なる環境でも利用しやすくなった
Web標準の目的は、単に正しい書き方を決めることだけではありません。
異なるブラウザ、OS、画面サイズ、入力方法、支援技術などを利用していても、同じ情報や機能へアクセスしやすくすることが重要です。
| Web標準が関係する分野 | 主な目的 |
|---|---|
| 相互運用性 | 異なるブラウザで共通の動作を実現する |
| アクセシビリティ | 多様な利用者が情報を利用できるようにする |
| 国際化 | さまざまな言語や文字方向を扱えるようにする |
| セキュリティ | 安全なWeb機能の基準を整える |
| プライバシー | 利用者情報の扱いを検討する |
| 保守性 | 長期間管理しやすいWebページを作る |
W3Cは現在も、アクセシビリティ、国際化、プライバシー、セキュリティなどを含むWeb標準やガイドラインの開発を進めています。(W3C)
HTMLやCSSの仕様に沿って制作することは、ブラウザで表示できるというだけでなく、多様な環境で情報を利用できるWebを作ることにつながります。
古いHTMLが現在も表示できる理由
Webの大きな特徴の一つは、過去に作られた多くのページを現在のブラウザでも閲覧できることです。
ブラウザは新しい仕様だけに対応するのではなく、古いHTMLや完全には正しくないHTMLも、可能な範囲で表示できるように作られています。
HTML Living Standardでは、正しいHTMLの書き方だけでなく、ブラウザがHTMLをどのように解析し、問題のある記述をどのように処理するかも詳しく定義されています。
これは、既存のWebページを突然表示できなくしないために重要です。
| Webで後方互換性が重視される理由 | 内容 |
|---|---|
| 過去のページが多い | 世界中に古いHTMLが残っている |
| 一度に修正できない | すべてのWebサイトを同時に更新することは難しい |
| 外部サービスと連携する | 他者が作成したページや機能も利用される |
| ブラウザ更新が必要 | 新機能と古いページの両方へ対応する必要がある |
| 情報を残す価値がある | 古い文書や記録もWeb上の重要な情報になる |
ただし、古い書き方でも表示されるからといって、現在もその方法を使うことが望ましいとは限りません。
新しくWebページを作るときは、現在のHTMLとCSSの考え方に沿い、意味のある構造と管理しやすいスタイルを使用することが大切です。
歴史を知ると現在の書き方の理由が分かる
HTMLとCSSの歴史をたどると、現在のWeb制作で重視されている考え方には、それぞれ理由があることが分かります。
HTMLで意味のある構造を作り、CSSでデザインを管理するのは、内容と見た目が混在した時代の問題を改善するためです。
標準的な要素やプロパティを使用するのは、ブラウザ独自仕様によって表示結果が大きく異なった経験があるためです。
複数のブラウザや端末で表示を確認するのは、Webが一つの機器だけで利用されるものではないためです。
Living Standardとして継続的に仕様が更新されるのは、Webそのものが完成して止まる技術ではなく、利用方法やブラウザの変化に合わせて発展し続ける基盤だからです。
| 現在のWeb制作で大切な考え方 | 歴史との関係 |
|---|---|
| HTMLとCSSを役割分担する | 構造とデザインの混在を避けるため |
| 標準的な仕様を使用する | ブラウザごとの非互換を減らすため |
| 意味のあるHTMLを書く | 文書の内容を機械にも伝えやすくするため |
| 複数環境で確認する | ブラウザや端末による違いへ対応するため |
| 古い書き方を見直す | 現在の仕様や利用環境に適した方法へ移るため |
| 最新仕様を確認する | HTMLやCSSが継続的に更新されるため |
HTMLとCSSは、最初から現在の形で完成していた技術ではありません。
研究者の文書共有から始まったHTMLは、WebページとWebアプリケーションの構造を支える言語へ発展しました。
文書の見た目を管理するために生まれたCSSは、文字や色の指定だけでなく、多様な画面に対応するレイアウトやアニメーションまで扱える技術へ進化しました。
その過程では、ブラウザ間の競争、独自仕様による混乱、標準化団体の活動、既存ページとの互換性など、多くの課題がありました。
現在のHTMLとCSSの仕様や制作方法は、こうした課題を一つずつ改善してきた結果として形作られています。
