← エラー辞典に戻る

HTML

labelをクリックしてもinputにフォーカスしない

labelとinputが紐づいていない

こんな症状

ラベルをクリックしても入力欄にカーソルが移動しない。labelとinputの紐づけが正しくないときに起きるよ。

まず試す

<label for="email"> と <input id="email"> のように for と id を同じ値にする。

html
<label for="email">メール</label>
<input id="email">

これで直らなければ、下の「自分のケース」を確認。

🔍 自分のケースはどれ?

  • for と id が違う
    → for と id を完全一致させる。
  • id を付け忘れた
    → input に id を付け、label の for と合わせる。
  • for/id を書きたくない
    → <label><input>テキスト</label> のように label で input を囲む。

なぜ起きる?

labelのfor属性とinputのid属性が一致していないよ。ブラウザはfor属性の値と同じidを持つinput要素を探して紐づけるんだ。値が一致していないとラベルクリックでフォーカスが移動しないよ。

✕ エラーが起きるコード
<label for="mail">メール</label><input id="email">
<!-- for と id 不一致 -->
✓ 直したコード
<label for="email">メール</label><input id="email">

✅ 直ったか確認

ラベルをクリックして対応する入力欄にフォーカスが移ればOK。

🆘 まだ直らないときは

for/id にスペースや特殊文字を使うと一致しにくい。シンプルな値にしよう。

Q&Aで質問する →

この解決法は役立ちましたか?

🔗 関連するエラー

🔗 別カテゴリの関連エラー

📖 この問題を学べるレッスン

HTMLコース(基礎から)で根本から理解する →

✏️ 手を動かして練習

このテーマの図解ドリルで実際に書いて確認する →

📝 関連ブログ記事

📖 関連する用語

🚀 HTMLコースで基礎を学ぼう!

エラーの原因を根本から理解するには、基礎を体系的に学ぶのが近道です。完全無料・登録不要。

HTMLコースを始める →

❓ 関連するQ&A