DIV CSS在ie6 下超链接失效。CSS告诉帮忙
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>无标题文档</title>
<style type="text/css">
<!--
.show .info_left{
height:33px;
line-height:33px;
width:120px;
background: url(../images/i_show/i_show_BT03.png);
text-indent:10px;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../images/i_show/i_show_BT03.png'); /* IE6 */
_background-image: none; /* IE6 */
}
.info_left a:link,
.info_left a:visited,
.info_left a:hover{
color:#FF0000;
}
-->
</style>
</head>
<body>
<div class="show">
<div class="info_left"><a target="_blank" onclick="location.href='http://www.baidu.com'">超链接失效</a></div>
</div>
</body>
</html>
测试ie6 就成,给我解决的我50加分。
只有CSS中的图片路径都可用且正确才能看到问题,否则滤镜不可用就看不出来了。谢谢大家,用ie6试试。我追加 80 分。 展开
我把你的代码测了一下,没问题啊,ie6也是可以点击的。
你要用png图片,想在ie6里面兼容其实用js也可以实现的。
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
};
};
};
if(navigator.userAgent.indexOf("MSIE")>-1)
{
window.attachEvent("onload", correctPNG);
};
用这段代码就可以解决png在ie6的兼容问题
还有就是你说用gif格式的会有白边,你可以用ps这样保存ctrl+alt+shift+s,然后再右边选项部分选gif,有一个选项mettle,选none,这样就不会有白边了。
background-image:url("1.jpg");
就应该是background-image:url("../images/1.jpg");
这样才对
只要在用到滤镜filter内的a链接样式上加上position:relative;链接就可以生效了
楼主,给你介绍一篇相关文章,请看参考资料
参考资料: http://www.pqshow.com/design/htmlcss/200912/12604.html
<body>
<div class="show">
<a target="_blank" href="http://www.baidu.com">超链接失效</a>
</div>
</body>
.show a,.show a:hover{
color:#FF0000;
display:inline-block ;
height:33px;
line-height:33px;
width:120px;
background: url(../images/i_show/i_show_BT03.png);
text-indent:10px;
_filter: progid:DXImageTransform.Microsoft.AlphaImageLoader(src='../images/i_show/i_show_BT03.png'); /* IE6 */
_background-image: none; /* IE6 */
}
然后我来帮你解答啊,呵呵