← エラー辞典に戻る

HTML

🖼️ loading="lazy"が効かない

ファーストビューの画像に指定している

😰 こんな症状

画像にloading="lazy"を付けたのに遅延読み込みされない。画像の最適化をしようとしたときに起きるよ。

🔍 原因

ブラウザはファーストビュー(最初に画面に見える範囲)の画像に対してはloading="lazy"を無視するよ。すぐに表示する必要がある画像を遅延させると逆に表示が遅くなるからだ。また、width/heightが未指定だとブラウザが画像の位置を計算できず、遅延読み込みが正しく動作しないことがあるよ。

❌ エラーが起きるコード

<img src="hero.jpg" loading="lazy">
<!-- ファーストビューに lazy は不要 -->

✅ 直し方

1. ファーストビューの画像にはloading="lazy"を付けない(スクロールしないと見えない画像にのみ使う)。 2. <img>にwidth/height属性を指定する(レイアウトシフト防止にもなる)。 3. 開発者ツールのNetworkタブで画像の読み込みタイミングを確認する。

✅ 修正後のコード

<img src="hero.jpg">
<img src="below.jpg" loading="lazy">

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

🔗 関連するエラー

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

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

HTMLコースで基礎から学ぶ →

📝 関連ブログ記事

📖 関連する用語

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

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

HTMLコースを始める →

❓ 関連するQ&A