透過PNGのテストPenetration PNG

なぜ今PNGなのか
 〃∩ _, ,_    /)    〃∩ _, ,_    /)
⊂⌒( `Д´)ミ( ⌒ヽつ⊂⌒( `Д´)ミ( ⌒ヽつ    そのうち。
 `ヽ._つ⊂ノ⊂( ,∀、)つ.`ヽ._つ⊂ノ⊂( ,∀、)つ
 ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄ ̄|     ミ
                            |    〃 ∩   補完しまふぉんぐしゃ
                            |   ⊂⌒ ヽ

hogehogehogehogehogehogehogehogehogehogehogehoge




PNGに透過フィルターを適用する
CASE 01.
<SPAN>タグに内包
CASE 02.
<IMG>タグに適用
CASE 03.
ただのPNG

画像は全て同じものです。
調べてみたところ、下にまとめてみましたが、ブラウザによって大分処理の仕方が変わるみたいです。


透過フィルターのスタイルシートは以下の通り。

CASE 01. <SPAN>タグに適用し、画像を内包させる

#front {
position: relative;
left: 0px; top: 0px;
z-index: 1;
width: 130px; height: 150px; ←画像と同じサイズにあわせる
filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='***.png',sizingMethod=scale);}

<span id="front"></span>

↑インライン要素の縦横と画像サイズを合わせ、そこへ透過した画像をはめこんでます。


CASE 02. <IMG>自体に透過フィルターを適用する

<img src="1.gif" width="130" height="150" ←画像と同じサイズにあわせる
style="filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='***.png',sizingMethod=scale);">

↑透過された1px×1pxのgif画像にスタイルシートで透過処理を施して読み込んでます



CSSのフィルターを使う
フィルター使えばpng使うまでもなく簡単に透過処理できるじゃん…何やってんだ俺 orz
pngのような透過&乗算はできないので、結局アンチエリアスは浮いてみえる罠。テキストや綺麗にアンチエリアスをきった画像ならcssフィルターで無問題です。
>> css -fileter-






© 2004 maki All rights reserved.