CSS Web制作

【CSS】Googleマップの埋め込み地図をレスポンシブ対応にする方法

※ 当サイトではアフィリエイト広告を利用しています

Googleマップの埋め込み地図って、レスポンシブにできない?

Googleマップの埋め込み地図は、そのままだと画面幅を狭くしても小さくなってくれません。

そこで今回は、アスペクト比を保ったまま、Googleマップをレスポンシブ対応にする方法を解説します。

 

完全無料のプログラミングスクール『ZeroPlus Gate』
30日間でWeb制作を学べる無料のプログラミングスクールがこちら
  • 30日間でWeb制作を学べる
  • 完全無料
  • 現役エンジニアへの質問無制限
  • オンラインの動画学習なので時間場所を問わず勉強可能
  • 最大4回の学習サポート面談
  • 受付は1日25名までの先着制
無料なのに専属のメンターが付き、現役エンジニアへの質問も無制限という破格のサービスです。
いきなり数十万するプログラミングスクールは厳しい・・・という人のお試しに最適。
現在は無料ですがいつ有料になるか分からないので、気になる方はお早めに👇

\ 完全無料 /

ZeroPlus Gate公式サイト

先着1日25名まで!

Googleマップの埋め込み地図をレスポンシブ対応にする方法

まずは、Googleマップの埋め込み方を解説します。

Googleマップで検索したら、共有をクリックします。

Googleマップ:共有をクリック

Googleマップ:共有をクリック

そして『地図を埋め込む』のタブを選択してから、『HTMLをコピー』をクリックします。

Googleマップ:『地図を埋め込む』→『HTMLをコピー』

Googleマップ:『地図を埋め込む』→『HTMLをコピー』

あとはHTMLにコードを貼り付けるだけです。

<iframe
  width="600"
  height="450"
  style="border: 0"
  src="Googleマップのコード"
  allowfullscreen="allowfullscreen"
  loading="lazy"
  referrerpolicy="no-referrer-when-downgrade"
>
</iframe>

こちらが実際に埋め込んだ地図です。

See the Pen
テスト
by junpei (@junpei-sugiyama)
on CodePen.

ここで左上のHTMLをクリックすると画面幅が狭くなりますが、横スクロールが可能になっただけでレスポンシブにはなっていませんね。

それでは、これからレスポンシブ対応にする方法を2つご紹介します。

まずは、埋め込みコードのwidthheightを削除しておきましょう。

<iframe
  style="border: 0"
  src="Googleマップのコード"
  allowfullscreen="allowfullscreen"
  loading="lazy"
  referrerpolicy="no-referrer-when-downgrade"
>
</iframe>

これで準備完了です。

 

aspect-ratioを使う方法

まずは、aspect-ratioを使う方法です。

これは、以下のCSSを書けばOKです。

iframe {
  aspect-ratio: 16/9;
  width: 100%;
}

画面幅は100%になっていますが、ここは自由に変えてOKです。

そしてaspect-ratio: 16/9;は、Googleマップのアスペクト比を16:9にしているということです。

もちろん比率を変えることも可能です。

aspect-ratioについては、以下の記事で詳しく解説しています。

あわせて読みたい
CSSのaspect-ratioでアスペクト比を固定してレスポンシブを簡単にする方法
CSSのaspect-ratioでアスペクト比を固定してレスポンシブを簡単にする方法

続きを見る

デモはこちら。

See the Pen
Googleマップ()
by junpei (@junpei-sugiyama)
on CodePen.

今度はHTMLをクリックして画面幅を狭くしたら、ちゃんとアスペクト比を保ちながらレスポンシブになっています。

 

padding-topを使う方法

もう一つの方法は、padding-topを使う方法です。

先ほどのaspect-ratioの方がスッキリしていておすすめなので、こちらはおまけです。

まずHTMLですが、divタグで囲みます。

<div class="map">
  <iframe
    style="border: 0"
    src="Googleマップのコード"
    allowfullscreen="allowfullscreen"
    loading="lazy"
    referrerpolicy="no-referrer-when-downgrade"
  >
  </iframe>
</div>

CSSはこちら。

.map {
  padding-top: 56.25%;
  position: relative;
}
.map iframe {
  height: 100%;
  left: 0;
  position: absolute;
  top: 0;
  width: 100%;
}

padding-top: 56.25%;は、『9 / 16 × 100% = 56.25%』となり、先ほどと同じ16/9になります。

なので、4/3にしたい場合はpadding-top: 75%;になります(3 / 4 × 100% = 75%)

デモはこちら。

See the Pen
Googleマップ(padding-top)
by junpei (@junpei-sugiyama)
on CodePen.

ちゃんとレスポンシブになっています。

まとめ

今回は、Googleマップの埋め込み地図をレスポンシブ対応にする方法について解説しました。

2つの方法をご紹介しましたが、先ほども書いたようにaspect-ratioを使った方が簡単にできます。

以上になります。

 

Web制作おすすめ教材と案件獲得サービス
当ブログではWeb制作学習におすすめの教材を厳選してご紹介しています。
こちらの記事を参考に教材を購入して成果を出している人もたくさんいるので、自分に必要な教材を探してみて下さい。
また、学習面だけでなく営業面である案件獲得サービスもご紹介しています。
スキルが身についても仕事がなければ意味がないので、営業に不安がある人はこちらの記事をぜひ参考にしてみて下さい。
この記事を参考にスキルと営業力を身につけて稼げるようになりましょう!

-CSS, Web制作
-