透過png。IE7以上が浸透してきたいま、どうしても使用頻度を上げてしまう透過png。
だがしかし、IE6ユーザーの壁は厚い。(かくゆう私も仕事場ではいまだにIE6)
ということで、どうしても使わざるを得ないIE6用Javascript。
私は透過pngを使うアイテムの場所で、使い分けていますので、それをご紹介。
ちなみにどれもかなり、かなぁり有名で。いまさら感たっぷりです。
本日はこちら
装飾用画像などで使う場合(CSSのbackground指定あり)
IE PNG Fix
私が使っているのは「IEPNGFix v2.0 Alpha」未だにBeta版となっていますが、十分動きます。
ダウンロードすると、色々入っているのですが、必要なものは
・iepngfix_tilebg のJSファイルと
・iepngfix のHTCファイルと
・blank のGIFイメージ
以上3つを任意の場所にアップします。
HTMLファイル側で設定するのは「iepngfix_tilebg」JSファイルの読み込みのみ。HTCの読み込みは必要ありません。
たとえばこんな感じ
<script src="js/iepngfix_tilebg.js" type="text/javascript"></script>
上記はjsというフォルダの中に格納している場合です。
次にHTCファイルにblank.gifイメージへのリンク先を指定している場所があるので、それを自分がアップした場所に指定し直します。
私の仕事では使うHTMLファイルからの参照が一定ではないので、絶対パスで指定します。
HTCファイルの大体16行目あたりにあると思います。
IEPNGFix.blankImg = 'http://自分のドメイン/images/blank.gif';
上記はimagesというフォルダの中に格納している場合です。
そんで最後、HTCファイルを使用する指定をCSS側に入れます。
たとえばこんな感じに
img {
behavior:url(http://自分のドメイン/js/iepngfix.htc);
}
ここも私は絶対パスで指定します。相対でも問題はないはずです。
imgタグ全体につけると、すべてのimg src="" ・・・・で指定しているイメージが対象になります。
が、これだけではbackgroundで指定しているイメージは対象になっていません。
ということで、IDなりClassなり、background指定で透過pngを使いたい場合はそこにも1つづつ指定していかなければなりません。
#Navigation{
margin:0px;
padding:0;
width:870px;
height:56px;
background:url(../images/navi_bg.png) no-repeat top left;
behavior:url(http://自分のドメイン/js/iepngfix.htc);
}
みたいに。
background-repeatとかpositionとかにも対応しているものなので、使える場面は多いと思います。
次は、ナビゲーションに透過pngを使いたい場合。
マウスオーバーに対応しているJavascriptです。




コメントはまだありません。