画像付きポップアップを表示する方法【HTML/CSS/JavaScript・サンプルコード付き】

ポップアップ

画像付きポップアップを表示する方法

画像付きポップアップを表示する方法を紹介します。このサンプルでは、ページを開いた時点で画像・タイトル・説明文・閉じるボタンをまとめたポップアップを表示します。画像と文章を同じポップアップ内へ配置できるため、文字だけのお知らせよりも内容を視覚的に伝えやすい構成です。

ECサイトの商品紹介、キャンペーンのお知らせ、会員サイトの案内、イベント告知、Webサイトのおすすめコンテンツなど、ページを開いた利用者へ画像付きの情報を見せたい場面に利用できます。「閉じる」ボタンを押すとポップアップが非表示になり、通常のページ内容を確認できます。

HTMLではポップアップに表示する画像、タイトル、説明文、ボタン文字を変更でき、CSSではポップアップの横幅、画像サイズ、余白、角丸、背景色、影などを調整できます。提供コードではページ読み込み時にポップアップが表示されるシンプルな構成としているため、画像付きのお知らせを自動表示したい場合にも利用しやすいサンプルです。レスポンシブにも対応しており、スマートフォン・タブレット・PCで利用できます。

コードについて 本記事のコードはサンプルコードです。ご利用前に必ず動作確認を行ってください。
免責事項 本コードの利用により発生した損害について、当サイトは一切の責任を負いません。

デモ

画像付きポップアップ

ページ読み込み時に画像付きのポップアップを表示します。

山と湖の風景
おすすめのお知らせ

画像と文章を組み合わせた
ポップアップを表示できます。

ページ読み込み時に画像付きポップアップが表示されます。「閉じる」で非表示になり、「もう一度表示する」を押すと再び表示されます。

コードをコピーして使おう!

<!DOCTYPE html>
<html lang="ja">
<head>

  <!-- 文字コード -->
  <meta charset="UTF-8">

  <!-- スマートフォン対応 -->
  <meta name="viewport" content="width=device-width, initial-scale=1.0">

  <!-- ページタイトル -->
  <title>画像付きポップアップ</title>

  <!-- CSSファイル -->
  <link rel="stylesheet" href="style.css">

</head>
<body>

  <!-- 画像付きポップアップ全体 -->
  <div class="image-popup_wrap">

    <!-- タイトル -->
    <div class="image-popup_title">
      画像付きポップアップ
    </div>

    <!-- 説明文 -->
    <p class="image-popup_text">
      ページ読み込み時に画像付きのポップアップを表示します。
    </p>

    <!-- ポップアップ -->
    <div class="image-popup_popup" id="image-popup">

      <!-- ポップアップ本体 -->
      <div class="image-popup_box">

        <!-- ポップアップ画像 -->
        <img
          class="image-popup_image"
          src="images/image1.png"
          alt="お知らせ画像">

        <!-- ポップアップタイトル -->
        <div class="image-popup_heading">
          おすすめのお知らせ
        </div>

        <!-- ポップアップ説明文 -->
        <p class="image-popup_message">
          画像と文章を組み合わせた<br>
          ポップアップを表示できます。
        </p>

        <!-- 閉じるボタン -->
        <button
          class="image-popup_close"
          type="button">
          閉じる
        </button>

      </div>

    </div>

  </div>

  <!-- JavaScriptファイル -->
  <script src="script.js"></script>

</body>
</html>
コードをコピーする場合 使用するコードのタブを選び、「このタブをコピー」をクリックすると、現在表示中のコードをコピーできます。
サンプル一式を取得する場合 HTML・CSSなどすべてのファイルが必要な場合は、「サンプル一式をダウンロード」をクリックしてください。

ファイル構成と設置方法

このサンプルはHTML・CSS・JavaScriptの3ファイルと、ポップアップ内に表示する1枚の画像で構成されています。HTMLでは画像付きポップアップのタイトル、説明文、画像、メッセージ、閉じるボタンを配置します。CSSではポップアップの横幅、画像サイズ、余白、角丸、影などを設定し、JavaScriptでは閉じるボタンをクリックしたときにポップアップを非表示にします。ページを開いた時点ではポップアップが表示された状態になります。

sample/
├── index.html
├── style.css
├── script.js
└── images/
    └── image1.png

各ファイルの役割
index.htmlは画像付きポップアップ全体を構成するファイルです。「画像付きポップアップ」のタイトル、説明文、ポップアップ内の画像、「おすすめのお知らせ」のタイトル、メッセージ、「閉じる」のボタン文字を変更できます。画像はimages/image1.pngを読み込む構成です。

style.cssは画像付きポップアップのデザインを設定するファイルです。全体の横幅や高さ、余白、背景色、ポップアップ本体の横幅、画像の縦横比、角丸、影、文字サイズ、ボタンの大きさなどを変更できます。

script.jsはポップアップを閉じる処理を行うファイルです。ページを開いた時点ではポップアップが表示されており、「閉じる」ボタンをクリックするとimage-popup_hiddenクラスを追加して非表示にします。

imagesフォルダにはポップアップへ表示する画像を配置します。このサンプルではimage1.pngを使用します。画像ファイルは利用者側で用意してください。

設置方法・使い方
sampleフォルダへindex.html、style.css、script.jsを配置し、その中にimagesフォルダを作成します。ポップアップへ表示する画像をimage1.pngのファイル名でimagesフォルダへ配置してください。別のファイル名を使用する場合は、index.htmlのsrc="images/image1.png"も実際のファイル名へ変更します。

配置が完了したらsample/index.htmlをブラウザで開きます。ページを開いた時点で画像付きポップアップが表示されます。画像、タイトル、メッセージを確認したあと、「閉じる」ボタンをクリックするとポップアップが非表示になります。

カスタマイズできる内容
index.htmlでは「画像付きポップアップ」のタイトル、「ページ読み込み時に画像付きのポップアップを表示します。」の説明文、ポップアップ内の画像、「おすすめのお知らせ」のタイトル、「画像と文章を組み合わせたポップアップを表示できます。」のメッセージ、「閉じる」のボタン文字を変更できます。

画像を変更する場合は、imagesフォルダへ使用する画像を配置し、src="images/image1.png"を変更します。画像内容に合わせてalt="お知らせ画像"も変更できます。

style.cssでは画像付きポップアップ全体の横幅や高さ、余白、背景色、ポップアップ本体の最大横幅、画像の縦横比、画像と文章の間隔、角丸、影、タイトルや説明文の文字サイズ、閉じるボタンの大きさや色などを変更できます。

数値調整
style.css
max-width:760px;
画像付きポップアップ全体の最大横幅です。値を大きくすると全体が横へ広がり、小さくするとコンパクトになります。

min-height:620px;
画像付きポップアップ全体の最低高さです。値を大きくすると縦方向に広がり、小さくすると低くなります。

margin:40px auto;
全体の上下余白です。40pxを大きくすると上下の間隔が広がり、小さくすると狭くなります。

padding:40px;
全体の内側余白です。値を大きくすると内容と外枠の間隔が広がります。

border-radius:20px;
全体とポップアップ本体の角丸です。値を大きくすると丸みが強くなります。

font-size:28px;
上部タイトルとポップアップ内タイトルの文字サイズです。値を大きくすると文字が大きく表示されます。

font-size:18px;
説明文、ポップアップメッセージ、閉じるボタンの文字サイズです。値を大きくすると文字が大きく表示されます。

padding:32px;
ポップアップを配置する領域の内側余白です。値を大きくするとポップアップと外枠の間隔が広がります。

max-width:500px;
ポップアップ本体の最大横幅です。値を大きくするとポップアップが横へ広がり、小さくするとコンパクトになります。

padding:24px;
ポップアップ本体の内側余白です。値を大きくすると画像や文章と外枠の間隔が広がります。

box-shadow:0 20px 50px rgba(15,23,42,.18);
ポップアップ本体の影です。20pxや50pxを変更すると影の位置や広がりを調整できます。

aspect-ratio:16 / 9;
ポップアップ画像の表示比率です。横16・縦9の比率で表示します。

margin:0 0 24px;
画像の下側余白です。24pxを大きくすると画像とタイトルの間隔が広がります。

border-radius:14px;
ポップアップ画像の角丸です。値を大きくすると画像の丸みが強くなります。

padding:14px 40px;
閉じるボタンの内側余白です。上下14pxを大きくするとボタンが高くなり、左右40pxを大きくすると横へ広がります。

border-radius:999px;
閉じるボタンの角丸です。十分に大きな値を指定して、両端が丸いボタンとして表示しています。

レスポンシブ対応
このサンプルはレスポンシブ対応です。style.cssでは全体にwidth:100%max-width:760px、ポップアップ本体にwidth:100%max-width:500pxを指定しているため、画面幅に合わせて縮小できます。

画面幅640px以下では全体の最低高さを560pxへ変更し、余白を24px 18pxへ縮小します。さらにポップアップ本体の余白やタイトル・説明文の文字サイズも小さくしているため、スマートフォン・タブレット・PCで利用できます。


こちらもおすすめ


コメント