【CSS】埋め込みGoogle MapをAPIなしで色変化させる方法。(Filterの解説)

【CSS】埋め込みGoogle MapをAPIなしで色変化させる方法。(Filterの解説)

記事
IT・テクノロジー
むかしむかし、Internet Explorerには「Filter」という優れた機能がありました。
(「とほほのWWW入門」にその残骸が残っております(笑))

Waveで画像を波打たせたり、本当にいろんなことができる機能でした。
個人的には、
これが標準化されて他のブラウザにも実装されないかなあ
と思っておりました(^^;)

ですが、W3Cの標準とは大きく異なる独自仕様だったため、IE10で廃止されてしまいます

ところが、その後CSS3で「filter」が登場
昔のIE独自Filterとは別物ですが、画像や要素の色を加工できる便利な機能として生まれ変わりました。

昔、Google Mapの色を変更しようと思うと、
Google Maps APIを使ってスタイル設定を行う必要がありました。

設定もなかなか大変ですし、API利用料の問題もあります。

ですが、埋め込み地図にCSSのfilterを適用するだけでも、
意外と雰囲気を変えることができます。

ポートフォリオからサンプルのURLに入ってみてください。
そちらの方がわかりやすいです。

個人的には、
filter: sepia(70%);
あたりの色合いが、ちょっとレトロで渋くて好きです(笑)


■1.オリジナルのGoogle Map

<iframe src="https://www.google.com/maps/embed?pb=~~~~~~~~~~" allowfullscreen=""></iframe>
map-00-original.png

■2.彩度変更(saturate)

filter: saturate(2);
map-01-filter-saturate(2).png

filter: saturate(0.5);
map-02-filter-saturate(0.5).png

■3.モノクロ(grayscale)

filter: grayscale(1);
map-03-filter-grayscale(1).png

■4.明度(brightness)

filter: brightness(120%);
map-04-filter-brightness(120%).png

filter: brightness(70%);
map-05-filter-brightness(70%).png

■5.セピア(sepia)

filter: sepia(70%);
map-06-filter-sepia(70%).png

filter: sepia(100%);
map-07-filter-sepia(100%).png

■6.色相回転(hue-rotate)

filter: hue-rotate(-50deg);
map-08-filter-hue-rotate(-50deg).png


■7.階調反転(invert)

filter: invert(1);
map-09-filter-invert(1).png

filter: invert(0.7);
map-10-filter-invert(0.7).png

■8.ぼかし(blur)

filter: blur(3px);
map-11-filter-blur(3px).png

■9.組み合わせて使用(hue-rotate、brightness、invert、saturate)

filter: hue-rotate(180deg) brightness(60%) invert(1) saturate(0.4);
map-12-filter-hue-rotate(180deg)-brightness(60%)-invert(1)-saturate(0.4).png

filter: sepia(100%) brightness(80%) contrast(150%) hue-rotate(60deg);
map-13-filter-sepia(100%)-brightness(80%)-contrast(150%)-hue-rotate(60deg).png


■10.filterで使用できる命令

table-filer.png

■11.おまけ。ドロップシャドウ(drop-shadow)

box-shadow は要素の四角形に対して影を付けますが、
filter: drop-shadow()
は画像の透明部分を認識して、
実際の形状に沿って影を付けてくれます。

PNG画像やSVGアイコンでは、非常に重宝する機能です。

下のサンプルを見れば、一目瞭然ですね♪

filter:drop-shadow(5px 5px 10px #555);
pict-14-filter-drop-shadow(5px-5px-10px-#555).png
box-shadow: 5px 5px 10px #555;
pict-15-box-shadow-5px-5px-10px-#555.png

※お気に入りに登録してくださった方に、20%引きのクーポンを配布いたします! まずは「お気に入り登録」をお願いいたしますm(_ _)m



サービス数40万件のスキルマーケット、あなたにぴったりのサービスを探す