透過フィルターFILTER ALPHA

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 MOZ-OPACITY






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(長方形)
    透過処理のグラデーション方法を指定。線状は左から右へ、放射状と長方形は中央から外側へグラデーションがかけられる。

    1 2 3 4
    abc abc abc abc


  • 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






    © 2004 maki All rights reserved.