0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

Web画像が重すぎる問題を解決する。画像圧縮の基本と確認ポイント

0
Posted at

ChatGPT 图像 2026年10月20日 14_50_02.png

Webサイトやブログに画像を追加したあと、ページの表示が急に遅くなった経験はないでしょうか。

原因の一つは、表示領域より大きな画像をそのまま配信していることです。CSSで小さく表示しても、ブラウザは元のファイルをダウンロードするため、通信量は減りません。

私もスマートフォンで撮影した写真をそのまま掲載し、1枚で数MBの通信が発生していることに後から気づきました。

そこで今回は、画質をできるだけ保ちながらファイルを軽くするために、画像圧縮の前後で確認したい項目と、HTML側の設定を整理します。


なぜ画像ファイルは大きくなるのか

主な原因は次のとおりです。

  • 表示領域よりピクセル数が大きい
  • 写真をPNGで保存している
  • 書き出し品質が必要以上に高い
  • PCとスマートフォンへ同じ画像を配信している

横幅800pxで表示する写真に、5000pxの元画像は不要です。圧縮率を上げる前にリサイズすると、画質を保ちやすくなります。

形式を選んでから圧縮する

形式 向いている画像
JPEG 写真、人物、風景
PNG 透過画像、ロゴ、文字を含む図
WebP 写真と図の両方、Web配信用

形式選択も画像圧縮の一部です。写真はJPEGやWebPで小さくなる場合がありますが、画面キャプチャは強く圧縮すると文字がぼやけます。

オンラインツールで試す

少数の公開用画像なら、ImageCompress のようなブラウザ型ツールも利用できます。
8846A3DA-A49D-498C-BD41-9BD2CB319EFF.png

基本的な流れはシンプルです。

  1. 元画像を別に保存する
  2. 画像を選択して処理する
  3. 容量と画質を比較する
  4. Web用ファイルとして保存する

オンライン処理では保存・削除方針を確認します。契約書や社内資料などの機密画像は、ローカルで処理するほうが安全です。

公開前に画質を確認する

画像圧縮後は、容量だけでなく次の部分を確認します。

  • 人物や商品の輪郭
  • 小さな文字とアイコン
  • グラデーションと透過部分
  • QRコードの読み取り

記事内で使う大きさとスマートフォン表示の両方で確認します。

HTML側でも無駄な通信を減らす

複数サイズがある場合は、srcsetで候補を伝えます。

<img
  src="photo-960.webp"
  srcset="photo-480.webp 480w, photo-960.webp 960w"
  sizes="(max-width: 600px) 100vw, 960px"
  width="960" height="640"
  alt="写真の内容"
>

画面外の画像には loading="lazy" を利用できます。ただし、最初に表示するメイン画像は不必要に遅延させません。

各候補も圧縮し、widthとheightでレイアウトのずれを防ぎます。

まとめ

画像を軽くする作業は、圧縮率だけを調整すれば終わりではありません。

  1. 表示サイズに合わせてリサイズする
  2. 内容に適した形式を選ぶ
  3. 圧縮後の画質を実画面で確認する
  4. 端末に合った画像を配信する

この順番なら、見た目を維持しながら通信量を減らせます。画像圧縮を公開前のチェック項目にすると、画像が増えても表示速度を管理しやすくなります。

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?