實(shí)現(xiàn)png圖片和png背景透明(支持多瀏覽器)的方法
更新時(shí)間:2009年09月08日 22:42:13 作者:
Firefox和Opera對(duì)PNG的支持非常的好,都是IE卻無視PNG圖片這一特性的“存在”,雖然IE7已經(jīng)支持都是IE6還是不行。
雖然有讓IE6支持PNG透明背景的JS程序,都是不是很方便,還是用CSS來實(shí)現(xiàn)的好。使用到的就是:IE5.5+的AlphaImageLoader濾鏡。
1.png背景透明
解決辦法:
#div1 {
height: 600px;
width: 260px;
padding: 20px;
background-repeat: repeat;
}
html>body #div1 {
background-repeat: repeat;background-image: url(bj1.png);
}
* #div1 {filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=scale, src="bj1.png")
}
附加:IE才識(shí)別的通配符(*),來定義IE瀏覽器中的濾鏡
Firefox、Opera等完全支持PNG透明圖片的瀏覽器也支持子選擇器(>)
語法:
filter : progid:DXImageTransform.Microsoft.AlphaImageLoader ( enabled=bEnabled , sizingMethod=sSize , src=sURL )
屬性:
enabled : 可選項(xiàng)。布爾值(Boolean)。設(shè)置或檢索濾鏡是否激活。true | false
true : 默認(rèn)值。濾鏡激活。
false : 濾鏡被禁止。
sizingMethod : 可選項(xiàng)。字符串(String)。設(shè)置或檢索濾鏡作用的對(duì)象的圖片在對(duì)象容器邊界內(nèi)的顯示方式。 crop : 剪切圖片以適應(yīng)對(duì)象尺寸。
image : 默認(rèn)值。增大或減小對(duì)象的尺寸邊界以適應(yīng)圖片的尺寸。
scale : 縮放圖片以適應(yīng)對(duì)象的尺寸邊界。
src : 必選項(xiàng)。字符串(String)。使用絕對(duì)或相對(duì) url 地址指定背景圖像。假如忽略此參數(shù),濾鏡將不會(huì)作用。
2.png圖片透明
如果在網(wǎng)頁(yè)中直接插入png圖片想使其透明只需加入以下js代碼,整個(gè)頁(yè)面內(nèi)的所有直接插入的png圖片都可以實(shí)現(xiàn)透明:
<script language="JavaScript">
function correctPNG() // correctly handle PNG transparency in Win IE 5.5 & 6.
{
var arVersion = navigator.appVersion.split("MSIE")
var version = parseFloat(arVersion[1])
if ((version >= 5.5) && (document.body.filters))
{
for(var j=0; j<document.images.length; j++)
{
var img = document.images[j]
var imgName = img.src.toUpperCase()
if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
{
var imgID = (img.id) ? "id='" + img.id + "' " : ""
var imgClass = (img.className) ? "class='" + img.className + "' " : ""
var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
var imgStyle = "display:inline-block;" + img.style.cssText
if (img.align == "left") imgStyle = "float:left;" + imgStyle
if (img.align == "right") imgStyle = "float:right;" + imgStyle
if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
var strNewHTML = "<span " + imgID + imgClass + imgTitle
+ " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
+ "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
+ "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
img.outerHTML = strNewHTML
j = j-1
}
}
}
}
window.attachEvent("onload", correctPNG);
</script>
1.png背景透明
解決辦法:
復(fù)制代碼 代碼如下:
#div1 {
height: 600px;
width: 260px;
padding: 20px;
background-repeat: repeat;
}
html>body #div1 {
background-repeat: repeat;background-image: url(bj1.png);
}
* #div1 {filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(enabled=true, sizingMethod=scale, src="bj1.png")
}
附加:IE才識(shí)別的通配符(*),來定義IE瀏覽器中的濾鏡
Firefox、Opera等完全支持PNG透明圖片的瀏覽器也支持子選擇器(>)
語法:
filter : progid:DXImageTransform.Microsoft.AlphaImageLoader ( enabled=bEnabled , sizingMethod=sSize , src=sURL )
屬性:
enabled : 可選項(xiàng)。布爾值(Boolean)。設(shè)置或檢索濾鏡是否激活。true | false
true : 默認(rèn)值。濾鏡激活。
false : 濾鏡被禁止。
sizingMethod : 可選項(xiàng)。字符串(String)。設(shè)置或檢索濾鏡作用的對(duì)象的圖片在對(duì)象容器邊界內(nèi)的顯示方式。 crop : 剪切圖片以適應(yīng)對(duì)象尺寸。
image : 默認(rèn)值。增大或減小對(duì)象的尺寸邊界以適應(yīng)圖片的尺寸。
scale : 縮放圖片以適應(yīng)對(duì)象的尺寸邊界。
src : 必選項(xiàng)。字符串(String)。使用絕對(duì)或相對(duì) url 地址指定背景圖像。假如忽略此參數(shù),濾鏡將不會(huì)作用。
2.png圖片透明
如果在網(wǎng)頁(yè)中直接插入png圖片想使其透明只需加入以下js代碼,整個(gè)頁(yè)面內(nèi)的所有直接插入的png圖片都可以實(shí)現(xiàn)透明:
復(fù)制代碼 代碼如下:
<script language="JavaScript">
function correctPNG() // correctly handle PNG transparency in Win IE 5.5 & 6.
{
var arVersion = navigator.appVersion.split("MSIE")
var version = parseFloat(arVersion[1])
if ((version >= 5.5) && (document.body.filters))
{
for(var j=0; j<document.images.length; j++)
{
var img = document.images[j]
var imgName = img.src.toUpperCase()
if (imgName.substring(imgName.length-3, imgName.length) == "PNG")
{
var imgID = (img.id) ? "id='" + img.id + "' " : ""
var imgClass = (img.className) ? "class='" + img.className + "' " : ""
var imgTitle = (img.title) ? "title='" + img.title + "' " : "title='" + img.alt + "' "
var imgStyle = "display:inline-block;" + img.style.cssText
if (img.align == "left") imgStyle = "float:left;" + imgStyle
if (img.align == "right") imgStyle = "float:right;" + imgStyle
if (img.parentElement.href) imgStyle = "cursor:hand;" + imgStyle
var strNewHTML = "<span " + imgID + imgClass + imgTitle
+ " style=\"" + "width:" + img.width + "px; height:" + img.height + "px;" + imgStyle + ";"
+ "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
+ "(src=\'" + img.src + "\', sizingMethod='scale');\"></span>"
img.outerHTML = strNewHTML
j = j-1
}
}
}
}
window.attachEvent("onload", correctPNG);
</script>
相關(guān)文章
javascript時(shí)間與時(shí)間戳互轉(zhuǎn)多種方式
javascript獲取時(shí)間、時(shí)間戳等,最核心的就是利用Date關(guān)鍵詞去獲取,時(shí)間戳的獲取方式整理了5種方法,后4種是利用new Date()實(shí)例化對(duì)象來獲取當(dāng)前時(shí)間,再對(duì)當(dāng)前獲取的時(shí)間再進(jìn)一步處理獲取時(shí)間戳,本文給大家介紹的非常詳細(xì),需要的朋友參考下吧2023-11-11兩個(gè)JavaScript中的特殊值null和undefined詳解
Null和Undefined是JavaScript中非?;A(chǔ)和重要的概念,理解它們的含義、特點(diǎn)和使用方式對(duì)于避免出現(xiàn)錯(cuò)誤和編寫健壯的應(yīng)用程序非常重要,這篇文章主要介紹了兩個(gè)JavaScript中的特殊值null和undefined詳解,需要的朋友可以參考下2023-06-06echarts學(xué)習(xí)之如何給餅圖中間添加文字
這篇文章主要介紹了echarts學(xué)習(xí)之如何給餅圖中間添加文字問題,具有很好的參考價(jià)值,希望對(duì)大家有所幫助。如有錯(cuò)誤或未考慮完全的地方,望不吝賜教2023-03-03微信小程序?qū)崿F(xiàn)Session功能及無法獲取session問題的解決方法
這篇文章主要介紹了微信小程序?qū)崿F(xiàn)Session功能及無法獲取session問題的解決方法,本文給大家介紹的非常詳細(xì),具有一定的參考借鑒價(jià)值,需要的朋友可以參考下2019-05-05js動(dòng)態(tài)刪除div元素基本思路及實(shí)現(xiàn)代碼
這篇文章主要介紹了js動(dòng)態(tài)刪除div元素基本思路及實(shí)現(xiàn)代碼,需要的朋友可以參考下2014-05-05JS自動(dòng)適應(yīng)的圖片彈窗實(shí)例
這篇文章介紹了JS自動(dòng)適應(yīng)的圖片彈窗實(shí)例代碼,有需要的朋友可以參考一下2013-06-06JavaScript實(shí)現(xiàn)捕獲鼠標(biāo)坐標(biāo)
這篇文章主要為大家詳細(xì)介紹了JavaScript實(shí)現(xiàn)捕獲鼠標(biāo)坐標(biāo),文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2020-04-04