Accelerated Mobile Pages

AMP(Accelerated Mobile Pages)は、モバイル端末でのウェブサイト表示速度を向上させるために開発された、オープンソースのHTMLフレームワークです。Googleが主導するAMP Open Source Projectによって開発が進められており、当初はFacebook Instant ArticlesやApple Newsといった競合サービスに対抗する目的がありました。

AMPの構成要素

AMPは、ウェブページを高速に表示するための技術的な仕様やライブラリ群を指します。その中核となるのは、従来のHTMLを改良したAMP HTMLと呼ばれるマークアップ言語です。AMPは主に、以下の3つの要素で構成されます。

AMP HTML: ウェブページの構造を記述するためのマークアップ言語で、HTMLの拡張版です。画像表示などでは専用のタグを使用し、一部機能に制限があります。
AMP JS: AMP HTMLを高速かつ正確に表示するためのJavaScriptライブラリで、AMP HTMLとブラウザ間の橋渡し役も担います。
AMP Cache: AMPページをキャッシュし、高速配信するためのCDN(コンテンツ配信ネットワーク)です。GoogleGoogle AMP Cacheとして運用しています。

AMP HTMLの詳細

AMPページを作成するには、AMP HTMLを記述します。基本的な書き方は通常のHTMLと似ていますが、いくつかの点で違いがあります。

冒頭部分: AMP HTMLでは、``タグを``または``と記述する必要があります。また、``タグ内には、charsetやviewportの設定、定型スタイル、AMP JSライブラリの読み込みなどが必須です。-LD形式の構造化データを含めることも推奨されます。
カスタム要素: AMP HTMLでは、``の代わりに``、サイドバーには``など、独自のカスタム要素が使用できます。これらの要素は、ユーザーが作成したJavaScriptの代替として機能します。
スタイル: CSSによるスタイル設定も可能ですが、外部ファイルや要素ごとのstyle属性は使用できません。``タグ内に1つの`