方法一:
<script language="java script">
// 修复 IE 下 PNG 图片不能透明显示的问题
function fixPNG(myImage) {
var arVersion = navigator.appVersion.split("MSIE");
var version = parseFloat(arVersion[1]);
if ((version >= 5.5) && (version < 7) && (document.body.filters))
{
var imgID = (myImage.id) ? "id='" + myImage.id + "' " : "";
var imgClass = (myImage.className) ? "class='" + myImage.className + "' " : "";
var imgTitle = (myImage.title) ? "title='" + myImage.title + "' " : "title='" + myImage.alt + "' ";
var imgStyle = "display:inline-block;" + myImage.style.cssText;
var strNewHTML = "<span " + imgID + imgClass + imgTitle
+ " style=\"" + "width:" + myImage.width
+ "px; height:" + myImage.height
+ "px;" + imgStyle + ";"
+ "filter:progid:DXImageTransform.Microsoft.AlphaImageLoader"
+ "(src=\'" + myImage.src + "\', sizingMethod='scale');\"></span>";
myImage.outerHTML = strNewHTML;
} }
window.onload=function(){
document.getElementById("top").style.height=screen.height/5+"px";
}//
</script>
<img src="logo.png" width="328" height="325" border="0" onload="fixPNG(this)" />
方法二:
<script language="java script">
function correctPNG()
{
for(var i=0; i<document.images.length; i++)
{
var img = document.images[i]
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
i = i-1
}
}
}
window.attachEvent("onload", correctPNG);
</script>
分享到:
相关推荐
标题“IE6下PNG透明代码”所涉及的关键知识点包括: 1. **PNG格式图片**:PNG是网络上常用的图像格式之一,具有高保真性和透明度支持。它有PNG8和PNG24两种常见类型,其中PNG8通常用于简单的颜色需求,支持256色和...
以上两种方法都可以有效解决IE6下PNG图片透明度的问题,但在实际应用中,考虑到IE6的市场份额逐渐减少,开发者也可能选择仅对现代浏览器提供PNG透明效果,而让IE6用户看到不透明的图片。 这个压缩包中的"ie6中png...
以下是关于"IE6下PNG背景透明的方法"的详细解释: 1. **CSS滤镜法**:这是最基础的解决方式,利用CSS中的`filter`属性。对于PNG8格式的图片,可以使用`filter:progid:DXImageTransform.Microsoft.AlphaImageLoader...
如果设计允许,将PNG24转换为PNG8也是一种解决方案。 6. **升级或引导用户换用现代浏览器**: 随着时间的推移,继续支持IE6的成本可能会变得越来越高。鼓励用户升级到更现代的浏览器,如Chrome、Firefox、Safari或...
总结,解决IE6下的PNG透明问题通常需要结合CSS滤镜和JavaScript库。虽然现在IE6的使用率已经非常低,但考虑到一些老系统或者特定用户群体,了解这些解决方案仍然是必要的。随着浏览器的更新迭代,现代浏览器已经很好...
为了解决这个问题,开发者们提出了多种JavaScript解决方案,使得在IE6下可以实现PNG透明。 首先,我们要理解PNG的透明特性。PNG支持两种透明模式:索引色透明(即PNG8,使用1位Alpha通道)和真彩色透明(即PNG24,...
总结来说,面对IE6下的PNG图片透明问题,开发者可以选择CSS滤镜方法或使用JavaScript库。虽然现代浏览器已经不再有这个问题,但考虑到仍有一部分用户可能还在使用旧版浏览器,了解和掌握这些解决方案仍然很有必要。...
PNGFix和DD_belatedPNG是两种常用的解决方案,它们通过JavaScript库来实现IE6对PNG透明的支持。 1. PNGFix:这是一种JavaScript解决方案,它通过修改DOM元素的滤镜属性来模拟PNG透明效果。pngfix.htm可能是一个包含...
在提供的资源中,`index.html`可能是一个示例页面,演示了这两种解决方案如何在实际环境中工作。`bg.jpg`可能是一个非透明的背景图片,用于对比和测试。而`tra.png`则是一个带有透明效果的PNG图像,用于展示解决方案...
标题"ie6-png解决方案01"暗示了我们将探讨针对这个问题的解决策略,而描述中提到已经分析并整理了两种有效的方法,可以同时处理插入图片和CSS背景的透明问题。 首先,让我们来看看一种常见的解决方案——使用...
### IE6下PNG图像透明完美解决方案–DD_belatedPNG #### 概述 在Web开发领域,尤其是在处理老旧浏览器兼容性问题时,IE6一直是开发者头疼的问题之一。其中一个典型的例子就是在IE6中处理PNG图像的透明问题。由于IE...
今天给大家推荐两款不同的方法,解决IE 6 下png透明问题。 1、一段很简单的JS代码,将此JS代码放入你的网页<head></head>之间即可。 2、在方法一中的JS与你网页JS出现冲突的情况下,可以选择方法二,...
一种常见的解决方案是使用JavaScript库,如压缩包中的`ie6-png.js`。这种库的工作原理通常是通过动态插入CSS滤镜来模拟PNG的透明效果。例如,可以使用以下CSS代码: ```css <!--[if IE 6]> .pngFix { behavior: ...
虽然iepngfix在当时是一个非常有用的解决方案,但随着IE6的逐渐淘汰以及现代浏览器的普及,开发者现在更多地转向了对现代浏览器兼容性更好的解决方案,如使用CSS3的`rgba()`颜色函数和`opacity`属性,或者使用渐进...
`Supersleight`是一种JavaScript解决方案,它专门用于解决IE6下的PNG透明问题。Supersleight通过动态修改CSS样式和利用特定的滤镜技术,使得IE6能够正确地显示PNG-24图像的透明效果,从而使得网站在IE6下也能保持...
本压缩包文件提供了几种解决IE6中PNG透明问题的方案。 首先,`checkerboard.gif`和`blank.gif`是两种常见的GIF图像,它们通常用于替代透明PNG图像,以模拟透明效果。`checkerboard.gif`呈现棋盘格图案,可以显示...
而PNG-8的索引透明则能正常工作,但仅限于全透明和不透明两种状态。 3. 解决方案: - CSS滤镜法:使用CSS滤镜属性`filter`,如`progid:DXImageTransform.Microsoft.AlphaImageLoader`,可以加载另一个透明GIF或PNG...