filter: Alpha (opacity=n, finishopacity=n, style=x, startX=n, finishX=n, startY=n, finishY=n)
ネスケでは複雑な透過処理、例えば不透過から透過するグラデーションなどは出来ないみたいですが、単なる透過処理ならば、「-moz-opacity」を使えば可能みたい。filter:alpha()と一緒に指定しておけばクロスブラウザにも対応。忘れないうちに早速まとめておこう。
単純な単一透過処理ならば、filter: Alpha (opacity=n, style=0); だけでおk。
例えば下記ソースだと、指定した要素内が左から右にかけての線状グラデになります。
style="filter:Alpha(opacity=100, style=1); "
↓こんな感じになりますた。(´・ω・`)
style="filter:Alpha(opacity=100, style=1); background-color: #0094E0; |
↓上記を踏まえて発展系。メニューとかに使うとかっこいいかも。
※下記例のように、NNでは-moz-opacityしか対応していないので、単一透過処理のみで抑えておくのが無難。
div.trans-on {
position: relative;
height: 40px; /* ←幅か高さを指定しないと機能しないみたいです */
background-color: #0094E0;
}
div.trans-on {
position: relative;
height: 40px; /* ←幅か高さを指定しないと機能しないみたいです */
background-color: #0094E0;
filter: alpha(opacity=50);
-moz-opacity: 0.5;
}
<div class="trans-off"
onmouseover="this.className='trans-on'"
onmouseout="this.className='trans-off'">
onmouseoverで透過処理を施してます。
filter: alpha(); のまとめ(IEのみ)
opacity=(透明)0〜100(不透明)
finishopacity=(透明)0〜100(不透明)
要素内の不透明度を指定します。グラデーションをかける際は、opacity〜finishopacityの範囲でかけられる。finishopacityを指定しない場合、opacity=nの数値からopacity=0のグラデーションとなる。
25 |
50 |
75 |
100 |
abc |
abc |
abc |
abc |
style=0(デフォルト。単一)、1(線状)、2(放射状)、3(長方形)
透過処理のグラデーション方法を指定。線状は左から右へ、放射状と長方形は中央から外側へグラデーションがかけられる。
startX=n, finishX=n,
startY=n, finishY=n
グラデーションのかかる領域を指定します。
下記はブロック要素に領域した例です。ブロック要素の幅を指定しないと適用されませんでした。高さは指定してもだめぽだなぁ…。
X:0〜130
Y:0〜30 |
X:0〜100
Y:0〜20 |
X:0〜70
Y:0〜10 |
X:0〜40
Y:0〜0 |
abc |
abc |
abc |
abc |
-moz-opacity: (透明)0〜1(不透明);
中間値は小数点で指定。0.500で半透明。こちらはNN、FireFoxのみ。
0.25 |
0.50 |
0.75 |
1.00 |
abc |
abc |
abc |
abc |
|