IEでも背景画像を2枚使いたい!?
デザイン上で背景画像2枚入れたい。ど~しても入れたい。そんなことがありました。
h2はどうしてもテキストにしたいが全体のデザインの関係でh2を装飾したい。なので背景画像を入れることに。しかし、h2はいくつものページにいくつか出てくる。統一感を出したいので同じデザインの装飾背景を使用いたい。しかも、そのデザインはテキストの始まりと終わりとにつけたい。
当然h2の長さがかわれば、背景の画像も変わる。てか変えたい、ぴったりサイズで。。。。
ということで背景を複数いれちゃおう!でも、IE7もはずせない。。。。と上の人が言う。IE7。。。。
ずぇんずぇん、平気!!
だって私にはPIEという強い味方があるもん♪
PIE詳細はこちら
PIE、この不思議なファイルはIEが相手でもradiusだって平気!複数背景だって何の問題もなく表示されちゃうもんね
と思っていたのもつかの間、PIEを入れた途端、IEでサイトごとつながらなくなってしまうという悲劇が。。。。まじか?!
これは会社で使用しているEC構築ASPの仕様によるもの、もしかすればhtaccessのテキストを編集することで解消できる可能性もある、でもでも、htaccessは編集できない仕様ですといわれてしまった。。。。
なのでPIEが使用できない。
ならば、仕方ない、一枚一枚背景画像を作成する。。。。というのもどうだろう?工数はいいけど(よくないけど、)懸念点は重くなること。
これだけは、ちょっと嫌だ。
ということで、いろいろと検索しまくった挙句、ついに発見!
AlphaImageLoader
ちょっとcssは長くなるけど、画像を何枚も使うよりはよっぽどよい!!
これでIEも解決~。
しかし、これはちょっとばかしコツが入りまして、2枚目の画像には位置の指定ができない。
な・の・で、1枚目の画像で調整し、2枚目は固定画像でよい物を指定する。
これで解決。
★モダンブラウザで2つの背景を入れる時 |
h2 {
|
でも、これではIEが・・・・・
なので、IE用に2つの背景画像を表示するためのコードを追加したものが下。※赤文字部分が追加のコード
★IE用のコードを追加すると |
h2 { background: transparent url(../img/newimg/side_tit_bg02.png) no-repeat 105px -45px\9; /* IE用の右に位置させたい背景 /* -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader (src='img/tit_bg.png', sizingMethod='crop')"; /* 2箇所あるsrcに左に位置させたい背景画像のコードを書く */
|
ということで、やったね~!IEでも複数背景表示できた~!!
しかし、残念なことが・・・・・あれから数ヶ月、いまや、恐ろしい強敵が!
IE10・・・・・(汗)
残念ながら、AlphaImageLoader、IE10にはかたなしでした。。。。。(涙)
ということで、やむなく一枚画像にする羽目に。。。。。。
なんか、手はないですかね~。IE10に勝つ方法は!?
2013年11月30日
コメントフィード
TRACK BACK URL: http://riemitsu.net/archives/340/trackback/