PDFをツールチップに表示する方法【HTML/CSS・サンプルコード付き】

ツールチップ
無料ツール
ツールチップを自由に作成

文章・色・サイズ・余白・位置・矢印・ボタンなどを設定して、HTML・CSSを自動生成できます。

ツールチップ作成ツールを使う
新しいタブで開きます

PDFをツールチップに表示する方法

PDFをツールチップに表示する方法を紹介します。このサンプルでは、「PDFを確認」ボタンへマウスカーソルを合わせるとツールチップが開き、その中にPDFをiframeで表示します。基本のツールチップと同じようにCSSの:hoverを利用して表示・非表示を切り替えるため、JavaScriptを使用せずHTMLとCSSだけで実装できます。

商品資料、マニュアル、案内資料、利用規約など、ページを移動せずにPDFの内容をその場で確認させたい場合に利用できます。通常時はPDFを非表示にしておき、必要なときだけボタンの上へツールチップとして表示するため、ページ内の表示スペースを抑えながら資料を案内できます。

HTMLではタイトル、説明文、ボタンの文章、表示するPDFのURLを変更できます。CSSではツールチップの横幅、高さ、ボタンとの間隔、背景色、角丸、表示切り替え時間などを調整できます。画面幅が狭い場合はツールチップの横幅とPDF表示エリアの高さを調整するため、スマートフォン・タブレット・PCの画面幅に対応できます。

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

デモ

PDFをツールチップで表示

ボタンへマウスカーソルを合わせるとPDFを表示します。

「PDFを確認」へマウスカーソルを合わせるとPDFが表示されます。カーソルを外すと自動で非表示になります。

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

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

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

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

  <!-- ページタイトル -->
  <title>PDFをツールチップに表示する方法</title>

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

</head>
<body>

  <!-- PDFツールチップ全体 -->
  <div class="pdf-tooltip_wrap">

    <!-- タイトル -->
    <div class="pdf-tooltip_title">
      PDFをツールチップで表示
    </div>

    <!-- 説明文 -->
    <p class="pdf-tooltip_text">
      ボタンへマウスカーソルを合わせるとPDFを表示します。
    </p>

    <!-- ツールチップ表示エリア -->
    <div class="pdf-tooltip_area">

      <!-- PDFを表示するボタン -->
      <button class="pdf-tooltip_button" type="button">
        PDFを確認
      </button>

      <!-- PDFを表示するツールチップ -->
      <div class="pdf-tooltip_message">

        <!-- PDF表示エリア -->
        <div class="pdf-tooltip_frame">

          <!--
            【表示するPDFの設定方法】

            1. sampleフォルダ内にpdfフォルダを作成してください。

            2. 表示したいPDFをsample/pdf/へ配置してください。

            3. サンプルではsample.pdfというファイル名を使用します。

            4. PDFのファイル名を変更する場合は、
               下記のsrcも同じファイル名へ変更してください。
          -->
          <iframe
            src="pdf/sample.pdf"
            title="PDF sample">
          </iframe>

        </div>

      </div>

    </div>

  </div>

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

Googleアカウントがあれば、InfinityFreeで無料サーバーを作成して、ダウンロードしたサンプルをネット上で動かせます。

InfinityFreeを初めて利用する場合は①から、すでにサーバーを作成している場合は②へ進んでください。

ファイル構成と設置方法

このサンプルはHTMLとCSSの2ファイルで構成されています。HTMLではPDFを表示するボタンとツールチップ、iframeを配置し、CSSではツールチップの位置、横幅、高さ、背景色、角丸、表示・非表示の切り替えなどを設定します。JavaScriptは使用しておらず、ボタンへマウスカーソルを合わせたときの表示はCSSの:hoverで実装しています。

表示するPDFファイルはZIPには含まれていません。利用者自身でPDFファイルを用意し、sampleフォルダ内へpdfフォルダを作成して、その中へ配置します。このサンプルではsample.pdfというファイル名を使用し、index.htmlからpdf/sample.pdfを読み込む構成です。

PDFファイルを配置したあとにsample/index.htmlをブラウザで開くと、「PDFを確認」ボタンが表示されます。ボタンへマウスカーソルを合わせると、ボタンの上側へツールチップが表示され、その中でPDFを確認できます。マウスカーソルを外すとツールチップは非表示になります。

sample/
├── index.html
├── style.css
└── pdf/
    └── sample.pdf

各ファイルの役割
index.htmlはPDFツールチップ全体を構成するファイルです。「PDFをツールチップで表示」のタイトル、説明文、「PDFを確認」のボタン文字を変更できます。また、PDFを表示するiframeのsrcに指定するファイル名を変更する場合もindex.htmlを編集します。

style.cssはPDFツールチップのデザインと表示動作を設定するファイルです。全体の横幅、余白、ボタンの色やサイズ、ツールチップの横幅、背景色、表示位置、PDF表示領域の高さ、角丸、表示切り替え時間などを変更できます。:hoverを使用して、ボタンへマウスカーソルを合わせたときだけツールチップを表示します。

pdf/sample.pdfはツールチップ内へ表示するPDFファイルです。このPDFは利用者自身で用意します。別のファイル名を使用する場合は、PDFファイルの名前とindex.htmlのiframeに指定するsrcを一致させてください。

設置方法・使い方
sampleフォルダへindex.htmlとstyle.cssを配置し、その中へpdfフォルダを作成します。次に、表示したいPDFファイルをsample/pdf/へ配置してください。

配布コードではpdf/sample.pdfを読み込む設定になっています。そのため、用意したPDFのファイル名をsample.pdfにして配置する場合は、index.htmlを変更する必要はありません。

PDFのファイル名を変更して使用する場合は、index.htmlのiframeにあるsrcも変更します。たとえばmanual.pdfというPDFを使用する場合は、sample/pdf/manual.pdfとして配置し、iframeをsrc="pdf/manual.pdf"へ変更してください。PDFの実際のファイル名とsrcに指定する名前は必ず一致させます。

ファイルを配置したらsample/index.htmlをブラウザで開きます。「PDFを確認」ボタンへマウスカーソルを合わせるとツールチップが表示され、その中でPDFを確認できます。マウスカーソルをボタンとツールチップの範囲から外すと非表示になります。

カスタマイズできる内容
index.htmlではタイトル、説明文、ボタンの文字、表示するPDFファイルを変更できます。別のPDFを表示するときはsample/pdf/へPDFを配置し、必要に応じてiframeのsrcに指定するファイル名を変更してください。iframeのtitle属性も、表示するPDFの内容に合わせて変更できます。

style.cssでは、ツールチップ全体の最大横幅、背景色、余白、角丸、ボタンの背景色や文字色、ツールチップの横幅や背景色、PDF表示領域の高さなどを変更できます。また、ツールチップ下部の三角形の大きさや、表示・非表示が切り替わる時間も調整できます。

数値調整
style.css
padding:40px 20px;
ページ全体の余白です。40pxは上下、20pxは左右の余白を表します。値を大きくすると画面端との間隔が広がります。

max-width:700px;
PDFツールチップ全体の最大横幅です。値を大きくすると横に広がり、小さくするとコンパクトになります。

margin:40px auto;
PDFツールチップ全体の上下余白です。40pxを大きくすると上下の間隔が広がります。autoによって左右中央へ配置されます。

padding:32px;
PDFツールチップ全体の内側余白です。値を大きくすると内容と外側の枠線との間隔が広がります。

border-radius:18px;
PDFツールチップ全体の角丸です。値を大きくすると丸みが強くなり、0にすると四角になります。

font-size:22px;
タイトルの文字サイズです。値を大きくすると文字が大きくなります。

margin:0 0 30px;
説明文の下側余白です。30pxを大きくするとボタンとの間隔が広がります。

padding:14px 30px;
「PDFを確認」ボタンの内側余白です。14pxは上下、30pxは左右の余白を表します。

border-radius:10px;
ボタンの角丸です。値を大きくすると丸みが強くなります。

bottom:calc(100% + 14px);
ツールチップをボタンの上側へ配置する間隔です。14pxを大きくするとボタンとの距離が広がります。

width:520px;
ツールチップの横幅です。値を大きくすると横に広がり、小さくすると狭くなります。

max-width:calc(100vw - 48px);
ツールチップが画面幅を超えないようにする最大横幅です。48pxによって左右合計48px分の余白を確保します。

padding:14px;
ツールチップ内部の余白です。値を大きくするとPDFとツールチップ外側との間隔が広がります。

border-radius:12px;
ツールチップ本体の角丸です。値を大きくすると丸みが強くなります。

transition: opacity .3s ease, visibility .3s ease;
ツールチップの表示状態が切り替わる時間です。0.3秒で変化し、値を大きくするとゆっくり、小さくすると速く切り替わります。

border:7px solid transparent;
ツールチップ下部に表示する三角形の大きさです。7pxを大きくすると三角形も大きくなります。

height:360px;
通常時のPDF表示領域の高さです。値を大きくするとPDFを表示する領域が高くなり、小さくすると低くなります。

@media (max-width:640px)
画面幅640px以下でスマートフォン向けの表示へ切り替えるブレークポイントです。

width:calc(100vw - 64px);
画面幅640px以下で使用するツールチップの横幅です。画面幅から64pxを引いたサイズで表示します。

height:300px;
画面幅640px以下で使用するPDF表示領域の高さです。値を変更するとスマートフォンでのPDF表示領域の高さが変わります。

レスポンシブ対応
このサンプルはレスポンシブ対応です。style.cssのwidth:100%とmax-width:700pxによって、PDFツールチップ全体が画面幅に合わせて縮小します。ツールチップにはmax-width:calc(100vw - 48px)を指定しているため、画面幅より大きくなりすぎないように調整されます。PDFを表示するiframeにもwidth:100%を指定しているため、PDF表示領域の横幅に合わせて表示されます。

画面幅640px以下では@media (max-width:640px)が適用され、全体の内側余白を24px 18pxへ変更し、ツールチップの横幅をcalc(100vw - 64px)、PDF表示領域の高さを360pxから300pxへ変更しています。これにより、スマートフォン・タブレット・PCの画面幅に合わせて利用できます。


こちらもおすすめ


コメント