收集一些IE濾鏡,留作之后開發用. 透明度 #myElement { opacity: .4; /* other browsers */ filter: progid: DXImageTransform.Microsoft.Alpha( opacity=40 ); /* IE6, IE7, and IE8 */ -ms-filter : "progid:DXImageTransform.Microsoft.Alpha( opacity=40 )"; /* IE8 only */ } PNG圖片透明度 .Transparent{ _filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src=img/nav_bg.png); _background:none; } 陰影 .box-shadow { -moz-box-shadow: 2px 2px 3px #969696; /* Firefox */ -webkit-box-shadow: 2px 2px 3px #969696; /* Safari and Chrome */ filter: progid:DXImageTransform.Microsoft.Shadow( color='#969696', Direction=145, Strength=3 ); } 漸變 #gradient { background-image: -moz-linear-gradient( top, #81a8cb, #4477a1 ); /* Firefox 3.6 */ background-image: -webkit-gradient(linear , left bottom , left top , color-stop( 0, #4477a1 ) , color-stop( 1, #81a8cb )); /* Safari & Chrome */ filter: progid:DXImageTransform.Microsoft.gradient( GradientType= 0 , startColorstr = '#81a8cb', endColorstr = '#4477a1' ); /* IE6 & IE7 */ -ms-filter: "progid:DXImageTransform.Microsoft.gradient( GradientType = 0,startColorstr = '#81a8cb', endColorstr = '#4477a1' )"; /* IE8 */ } 背景色透明(RGBA) #rgba p { background: rgba( 98, 135, 167, .4 ); /* other browsers */ filter: progid:DXImageTransform.Microsoft.gradient( GradientType = 0,startColorstr = '#886287a7', endColorstr = '#886287a7' ); /* IE */ } 多背景 #multi-bg { /* other browsers */ background: url(images/bg-image-1.gif) center center no-repeat, url(images/bg-image-2.gif) top left repeat; /* IE */ background: transparent url(images/bg-image-1.gif) top left repeat; filter: progid:DXImageTransform.Microsoft.AlphaImageLoader (src = 'images/bg-image-2.gif', sizingMethod = 'crop'); /* IE6-8 */ -ms-filter: "progid:DXImageTransform.Microsoft.AlphaImageLoader(src = 'images/bg-image-2.gif', sizingMethod = 'crop')"; /* IE8 only */ } 旋轉 #rotate { -webkit-transform: rotate(180deg); /* Safari and Chrome */ -moz-transform: rotate(180deg); /* Firefox */ filter: progid:DXImageTransform.Microsoft.BasicImage(rotation = 2); /* IE */ } 其他
CSS濾鏡雖然只能在IE瀏覽器中表現出效果,但是仍不失為網頁增加特效的好辦法。
1.CSS靜態濾鏡樣式 (filter)
CSS靜態濾鏡樣式的使用方法:{ filter : filtername( parameters1, parameters2, ...) }
Filter樣式 簡要說明 支持參數
alpha 設置圖片或文字的不透明度 opacity、finishOpacity、style、startX、startY、finishX、finishY、add、direction、strength
blur 在指定的方向和位置上產生動感模糊效果 add、direction、strength
chroma 對所選擇的顏色進行透明處理 color
dropShadow 在指定的方向和位置上產生陰影 color、offX、offY、positive
flipH 沿水平方向翻轉對象
flipV 沿垂直方向翻轉對象
glow 在對象周圍上發光 color、strength
gray 將對象以灰度處理
invert 逆轉對象顏色
light 對對象進行模擬光照
mask 對對象生成掩膜 color
shadow 沿對象邊緣產生陰影 color、direction
wave 在垂直方向產生正弦波形 add、freq、lightStrength、phase、strength
xray 改變對象顏色深度,並繪制黑白圖象
以上就是靜態濾鏡的全部內容,要注意的是CSS是區分大小寫的!
2.CSS動態濾鏡
動態濾鏡可以為頁面添加動人的淡入淡出、圖象轉化效果,它可以分為兩種blend(混合)和reveal(顯示),前者可以使對象漸漸消失或出現, 后者 提供了24種圖象轉化的效果。對於動態濾鏡的調用除去象在靜態濾鏡中要定義的濾鏡類型,參數等等,還用到腳本語言控制它的狀態。
首先,在開始一個動態效果之前,先需要進行裝備(Apply),然后播放(Play)動態效果,在動態效果進行中還可以中斷動態效果(Stop),以上可以用下面的方法實現:
對象名.filters(濾鏡數值).Apply()
對象名.filters(濾鏡數值).Play()
對象名.filters(濾鏡數值).Stop()
對於濾鏡狀態的判斷可以通過“對象名.filters(濾鏡數值).status”判斷,該值為0時,表示濾鏡未執行,為1時,表示濾鏡已經完成, 為2時表示濾鏡在執行中。在定義filter時,如上面所提到的,可以有混合(“filter:blendTrans(duration=時間數 值)”,duration表示濾 鏡執行需要的時間,單位為秒)和顯示(“filter:revealTrans(duration=時間數值,transition=過渡類型)”,過渡 類型為從0-23的數值)兩種。
濾鏡目前還未被W3C正式承認。濾鏡只是微軟IE瀏覽器的組成部分,不能用於Netscape瀏覽器。制定有關標准的組織正在就此進行討論,但尚未 達成最后定論。在我看來,濾鏡是一種非常有趣而且是制作精彩的視覺效果必不可少的一部分。濾鏡能節省帶 寬,而且是你能在制作奇妙的視覺設計時使用文字格式,而不必先制作龐大的文字位圖以取得相同的效果。但由於這些功能尚未成為HTML的正式組成部分,所以 並不是所有的瀏覽器都能看到這些特色。有些時候,你必須考慮以傳統的方式制作相同的效果,當然,你不得不繼續將龐大的GIF文件塞到網頁之中。
實例講解
現在非常多的朋友搞個人網頁,而且做的五彩繽紛,各有特色,但是比較多的朋友把大大的一幅圖象放在頁面上,致使頁面下載很慢,加上用GIF格式做動 畫,盡管用GIF格式搞的動畫比較苗條,但是也不大合算。能否不用特別做的圖象,不用GIF格式做動畫,可以把頁面搞的生氣活現呢?可以,但 JAVASCRIPT比較對一般初學者來說是比較難的,筆者今天要用IE本身內含的STYLE這個重量級的命令屬性中的RevealTrans和濾鏡來搞 搞新意思!希望網友們能靈活運用這些濾鏡和頁面切換效果,把自己的主頁搞的有聲有色!不斷進步!
Style屬性可以應用在標簽中,更可用廣泛應用 在<table><tr><td><body><center><img><input><font><form><frame><label><map> 等等標簽中,更重要的是,它可用在標簽中。
頁面切換效果:
在頁面前部與之間加入""
說明:duration為頁面切換的時間長度,3.000表示3秒鍾,一般可以直接輸入3便可;transition為切換效果,從1-23共22種不同的切換效果,其中23為隨機效果。
濾鏡效果:
Photoshop的濾鏡用的多了吧,在頁面中也用濾鏡搞搞新意思吧!
語法: filter:filtername(fparameter1,fparameter2...)
(Filtername為濾鏡的名稱,fparameter1、fparameter2等是濾鏡的參數)
濾鏡說明:
Alpha:設置透明層次.
blur:創建高速度移動效果,即模糊效果.
Chroma:制作專用顏色透明.
DropShadow:創建對象的固定影子.
FlipH:創建水平鏡像圖片.
FlipV:創建垂直鏡像圖片.
glow:加光輝在附近對象的邊外.
gray:把圖片灰度化.
invert:反色.
light:創建光源在對象上.
mask:創建透明掩膜在對象上.
shadow:創建偏移固定影子.
wave:波紋效果.
Xray:使對象變的像被x光照射一樣.
1、濾鏡:Alpha
語法:filter:Alpha(Opacity=opacity,FinishOpacity=finishopacity,Style=style,StartX=startX,StartY=startY,FinishX=finishX,FinishY=finishY)
說明:
Opacity:起始值,取值為0~100, 0為透明,100為原圖。
FinishOpacity:目標值。
Style:1或2或3
StartX:任意值
StartY:任意值
例子:filter:Alpha(Opacity="0",FinishOpacity="75",2)
2、濾鏡:blur
語法:filter:Blur(Add = add, Direction = direction, Strength = strength)
說明:
Add:一般為1,或0。
Direction:角度,0~315度,步長為45度。
Strength:效果增長的數值,一般5即可。
例子:filter:Blur(Add="1",Direction="45",Strength="5")
3、濾鏡:Chroma
語法:filter:Chroma(Color = color)
說明:color:#rrggbb格式,任意。
例子:filter:Chroma(Color="#FFFFFF")
4、濾鏡:DropShadow
語法:filter:DropShadow(Color=color, OffX=offX, OffY=offY, Positive=positive)
說明:Color:#rrggbb格式,任意。
Offx:X軸偏離值。
Offy:Y軸偏離值。
Positive:1或0。
例子:filter:DropShadow(Color="#6699CC",OffX="5",OffY="5",Positive="1")
5、濾鏡:FlipH
語法:filter:FlipH
例子:filter:FlipH
6、濾鏡:FlipV
語法:filter:FlipV
例子:filter:FlipV
7、濾鏡:glow
語法:filter:Glow(Color=color, Strength=strength)
說明:
Color:發光顏色。
Strength:強度(0-100)
例子:filter:Glow(Color="#6699CC",Strength="5")
8、濾鏡:gray
語法:filter:Gray
例子:filter:Gray
9、濾鏡:invert
語法:filter:Invert
例子:filter:Invert
10、濾鏡:mask
語法:filter:Mask(Color=color)
例子:filter:Mask (Color="#FFFFE0")
11、濾鏡:shadow
語法:filter:Shadow(Color=color, Direction=direction)
說明:
Color:#rrggbb格式。
Direction:角度,0-315度,步長為45度。
例子:filter:Shadow (Color="#6699CC", Direction="135")
12、濾鏡:wave
語法:filter: Wave(Add=add,Freq=freq,LightStrength=strength,Phase=phase, Strength=strength)
說明:
Add:一般為1,或0。
Freq:變形值。
LightStrength:變形百分比。
Phase:角度變形百分比。
Strength:變形強度。
例子:filter: wave(Add="0", Phase="4", Freq="5", LightStrength="5", Strength="2")
13、濾鏡:Xray
語法:filter:Xray
例子:filter:Xray;
14.顏色變化
語法:filter: progid:DXImageTransform.Microsoft.Gradient(GradientType=0, StartColorStr="#B5CCFA", EndColorStr="#B5CCFA");
Filter 為微軟的專有技術,並被應用到 IE4.0 及以上的 IE 瀏覽器中,所以只有 IE 支持。其他瀏覽器中對 Filter 無任何效果。調用 Filter 對應的 DOM 對象將會出錯。

IE4.0 以上版本的 IE 瀏覽器中可以通過 CSS 在網頁中應用多種多媒體樣式的視覺效果,這就是微軟的 Filter 技術。隨着 IE 版本的增加,並在各版本中不斷的加強 Filter 效果。通過將 Filter 與腳本的結合,可以在頁面中實現各種復雜的特效,如半透明、陰影、投影、遮罩、模糊、漸變、波浪、圖片翻轉等效果。
透明效果:filter:alpha(opacity=50);
黑白照片:filter: gray;
X光照片:filter: Xray;
風動模糊:filter: blur(add=true,direction=45,strength=30);
正弦波紋:filter: Wave(Add=0, Freq=60, LightStrength=1, Phase=0, Strength=3);
半透明效果:filter: Alpha(Opacity=50);
線型透明:filter: Alpha(Opacity=0, FinishOpacity=100, Style=1, StartX=0, StartY=0, FinishX=100, FinishY=140);
放射透明:filter: Alpha(Opacity=10, FinishOpacity=100, Style=2, StartX=30, StartY=30, FinishX=200, FinishY=200);
白色透明:filter: Chroma(Color=#FFFFFF);
降低色彩:filter: grays;
底片效果:filter: invert;
左右翻轉:filter: fliph;
垂直翻轉:filter: flipv;
投影效果:filter:progid:dXImageTransform.Microsoft.DropShadow(color=#cccccc,offX=5,offY=5,positives=true);
馬賽克:filter:progid:dXImageTransform.Microsoft.Pixelate(maxsquare=3);
發光效果:filter:progid:dXImageTransform.Microsoft.Glow(color=#cccccc,Strength=5);
柔邊效果:filter:alpha(opacity=100, finishOpacity=0,style=2;
許多 Filter 中的特效均已進入了 CSS3 草案,並在新版的非 IE 瀏覽器中得到了很好的支持。
Microsoft.AlphaImageLoader濾鏡講解
Microsoft.AlphaImageLoader 是IE濾鏡 的一種,其主要作用就是對圖片進行透明處理。雖然FireFox和IE7以上的IE瀏覽器已經支持透明的PNG圖片,但是就IE5-IE6而言還是有一定的意義。
| enabled | : | 可選項。布爾值(Boolean)。設置或檢索濾鏡是否激活。true | false
|
|||||||||
| sizingMethod | : | 可選項。字符串(String)。設置或檢索濾鏡作用的對象的圖片在對象容器邊界內的顯示方式。
|
|||||||||
| src | : | 必選項。字符串(String)。使用絕對或相對 url 地址指定背景圖像。假如忽略此參數,濾鏡將不會作用。 |
| Enabled | : | 可讀寫。布爾值(Boolean)。參閱 enabled 屬性。 |
| sizingMethod | : | 可讀寫。字符串(String)。參閱 sizingMethod 屬性。 |
| src | : | 可讀寫。字符串(String)。參閱 src 屬性。 |
PNG(Portable Network Graphics)格式的圖片的透明度不妨礙你選擇文本。也就是說,你可以選擇顯示在PNG(Portable Network Graphics)格式的圖片完全透明區域后面的內容。
.dream{filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(src='images/earglobe.gif');}
P.S. 當想使用backgroundimage屬性時,如果不想讓圖片原尺寸顯示,而是類似於IMG width=100% heigth=100% 的效果,可以通過此filter實現。
- span.style.filter="progid:DXImageTransform.Microsoft.AlphaImageLoader(src='test.jpg', sizingMethod='scale')";
其實想到的話,也很簡單了.就是先讓FF正常顯示該圖片,然后,用*或_ 來清除IE下的顯示效果,最后用*或_ 來做以上的濾鏡效果。大功告成!
以上是官方的說明。事實上實際操作中需要注意:AlphaImageLoader濾鏡會導致該區域的鏈接和按鈕無效,一般情況下的解決辦法是為鏈接或按鈕 添加:position:relative使其相對浮動 要注意的是,當加載濾鏡的區域的父層有position:absolute絕對定位的時候使用position:relative也不能使鏈接復原。建議 使用浮動辦法處理。
具體操作:
- 為預覽區域(比如要在某個 div 中預覽)添加樣式:filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=scale);。
- 為 AlphaImageLoader 設置 src 屬性。

