IE6+背景透過PNG+position:absolute+リンク = さようなら、IE
さて、背景画像に透過PNGを用い、position:absoluteで絶対座標位置指定をした場合。
ちまたのfixスクリプトを用いると、その中身のリンクが作動しなくなったりする。
そこで、ピンポイント仕様で対応スクリプトを作った。ので、メモ。
$(".ieBackgroundPngFix").each(function(){ if(jQuery.browser.msie&&jQuery.browser.version<7){ var $t=jQuery(this);var $c=$t.clone(); if($t.css("backgroundImage").match(/^url[("']+(.*¥.png)[)"']+$/i)) { $t.css({filter:"progid:DXImageTransform.Microsoft.AlphaImageLoader(src="+RegExp.$1+",sizingMethod='scale')",background:"none"}) .html(" ").after($c.css({background:"none"})); } } });
複製して、片方を空にしてフィルタ適用(画像表示用)、片方は背景消してそのまま配置(リンク等を作動させる用)。position:absoluteなので、うまくかさなってくれ~。
…無茶してます(^^;
あ、コードはほぼ↓のパクリですよ。でも、あいであはおいらのだお。
アルファ画像を扱うalphafilter.jsライブラリ[to-R]
Comments