Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

はじめに

本書は、プログラミングスクール FjordBootCamp の教材として作成されたものです。FjordBootCamp では、単に文法や機能を暗記するのではなく、「なぜそうなっているのか」を理解し、自分で調べて判断できることを重視しています。本書も同じ方針で、HTML を表面的な書き方ではなく、その歴史、仕様、実装の背景から理解することを目指します。

この本は、HTML の書き方を学ぶ本ではありません。<div> の意味やフォームの作り方を最短で覚えたい人には、もっと適した入門書があります。本書が扱うのは、それより一段奥にある問いです。なぜ HTML はこういう形をしているのか。なぜブラウザはそこまで面倒を見るのか。なぜ「変」に見える仕様が、何十年も残り続けているのか。その理由を、歴史・仕様・実装の三つの面からたどります。

HTML はしばしば軽く見られます。プログラミング言語ではない。エラーを出さない。壊れたマークアップでも何となく表示される。そうした性質だけを拾うと、HTML は「適当な技術」に見えるかもしれません。しかし実際には、HTML は理想と現実の折衷を積み重ねながら、巨大な互換性の生態系を支えてきました。本書の目的は、その歴史を笑うことではなく、筋道を理解することです。

本書の想定読者は、HTML を一度は書いたことがある人です。Rails エンジニア、フロントエンド初中級者、Web 制作の経験者、教科書的な説明では物足りない人を主な読者として想定しています。厳密な仕様書を最初から読む必要はありませんが、仕様やブラウザ実装の話に踏み込むため、完全な初心者向けのやさしい導入書ではありません。

各章では、できるだけ次の順で話を進めます。まず短い具体例を置き、次にブラウザや仕様で何が起きているかを確認し、そのうえで「なぜそうなったのか」を説明します。最後に、よくある誤解や実務上の見方に触れます。知識を増やすより、HTML を見る解像度を上げることを目指します。