HTMLの属性一覧

HTMLでよく使う属性を、対象タグ・意味とあわせて一覧でまとめます。全要素で使えるグローバル属性から、class・lang・styleなど個別の属性の値まで確認できます。

HTML属性一覧

HTMLの属性は、タグに追加の情報や設定を与えるための記述です。属性は大きく、全ての要素で使えるグローバル属性と、特定の要素だけで使える要素固有の属性の2種類に分かれます。

グローバル属性/要素固有の属性

まずは、どのタグにも書けるグローバル属性の一覧です。

属性名 意味・用途
id 要素に固有の名前を付ける
class CSS適用などのための分類名
style CSSを要素に直接指定する
lang 内容の言語を指定する
title 補足情報(ツールチップ表示)
hidden 要素を非表示にする
tabindex キーボード移動の順序
contenteditable 内容を編集可能にする
data-* 独自データを埋め込む

続いて、特定のタグと組み合わせて使う主な要素固有の属性です。

属性名 主な対象タグ 意味
href a、link リンク先のURL
src img、script 読み込むファイルの場所
alt img 画像の代替テキスト
type input 入力欄の種類
value input 初期値・送信される値
placeholder input 入力例の薄字表示
action form フォームの送信先
method form 送信方式(GET/POST)
colspan td、th 表のセルを横に結合
target a リンクの開き方(別タブ等)

ここに挙げた属性を押さえれば、日常のコーディングの大半に対応できます。全属性の網羅的な一覧はMDNのHTML属性リファレンスで確認できます。

class属性とよく使うクラス名

HTMLに「決められたクラス名の一覧」は存在せず、class属性の値は自分で自由に命名します。ただし実務では、役割ごとに定番の名前が広く使われています。

よく使われる定番のクラス名は以下の通りです。

クラス名 使われる場面
header ページ上部の領域
nav ナビゲーション
main / content 主要コンテンツの領域
footer ページ下部の領域
container / wrapper 全体を包む枠
btn / button ボタンの見た目
card カード型のブロック
active 選択中・表示中の状態
error / success メッセージの状態

クラス名は半角英数字とハイフンで、「red」のような見た目ではなく「error」のような役割で名付けるのが指針です。役割で命名しておくと、後からデザインを変えてもHTMLを直さずに済みます。

lang属性の値一覧

lang属性には、BCP 47と呼ばれる言語コードを指定します。BCP 47とは、言語を表すコードの国際的な取り決めのことで、日本語ページなら<html lang="ja">のようにhtmlタグへ指定するのが基本です。

主な言語コードの一覧は以下の通りです。

値 言語
ja 日本語
en 英語
en-US 英語(アメリカ)
en-GB 英語(イギリス)
zh-CN 中国語(簡体字)
zh-TW 中国語(繁体字)
ko 韓国語
fr フランス語
de ドイツ語
es スペイン語
pt ポルトガル語

lang属性はブラウザの翻訳機能や音声読み上げの精度に影響するため、ページの言語と必ず一致させます。地域を区別する必要がなければ、jaやenのような2文字のコードだけで十分です。

style属性で使う主なプロパティ

style属性には、CSSのプロパティと値を「プロパティ: 値;」の形式でそのまま書きます。style属性専用の一覧があるわけではなく、CSSで使えるプロパティ全般を指定できます。

style属性でよく使うプロパティは以下の通りです。

プロパティ 意味 記述例
color 文字の色 color: red;
background-color 背景の色 background-color: #eee;
font-size 文字の大きさ font-size: 18px;
font-weight 文字の太さ font-weight: bold;
text-align 行揃え text-align: center;
margin 外側の余白 margin: 10px;
padding 内側の余白 padding: 10px;
border 枠線 border: 1px solid #ccc;
width 幅 width: 300px;

次のコードは、class属性とstyle属性を1つの段落に指定した完全な例です。

<!DOCTYPE html>
<html lang="ja">
<head>
<meta charset="UTF-8">
<title>属性の練習</title>
</head>
<body>
<p class="note" style="color: red; font-size: 18px;">class属性とstyle属性を指定した段落です。</p>
</body>
</html>

ブラウザで開くと、赤色・18pxの文字で段落が表示されます。継続的に使う装飾はstyle属性ではなくCSSファイルにまとめて書くと、HTMLが読みやすく保てます。

HTMLの属性一覧に関するよくある質問

HTMLの属性は全部でいくつありますか?

仕様で定義された属性はグローバル属性と要素固有の属性をあわせて100種類以上あります。全てを暗記する必要はなく、この一覧のよく使うものから覚えれば十分です。

クラス名に日本語は使えますか?

技術的には動作しますが、文字化けや一部ツールの非対応を避けるため、半角英数字とハイフンで命名するのが一般的です。

lang属性を書かないとどうなりますか?

見た目は変わりませんが、ブラウザの翻訳機能や音声読み上げが言語を誤判定しやすくなります。

style属性とCSSファイルはどちらを使うべきですか?

繰り返し使うスタイルはCSSファイルにまとめるのが基本です。style属性は一時的な確認や、CSSファイルを使えないHTMLメールなど限定的な場面で使います。