绝对定位元素盖住链接或添加某事件handle的元素后,那么该链接的默认行为(页面跳转)或元素事件将不会被触发。
现在Firefox3.6+/Safari4+/Chrome支持一个称为pointer-events的css属性。使用该属性可以决定是否能穿透绝对定位元素去触发下面元素的某些行为。如下:
<!DOCTYPEhtml>
<html>
<head>
<metacharset="utf-8">
<title>CSS:pointer-events</title>
<styletype="text/css">
.overlay1{
width:80px;
height:20px;
background:gold;
position:absolute;
top:5px;
left:5px;
opacity:0.5;
}
.overlay2{
width:80px;
height:20px;
background:gold;
position:absolute;
top:40px;
left:5px;
opacity:0.5;
}
.pointer{pointer-events:none;}
</style>
<scripttype="text/javascript">
window.onload=function(){
document.getElementById('chx').onclick=function(){document.getElementById('a').className
="overlay1"+((this.checked)?"pointer":"");
document.getElementById('b').className
="overlay2"+((this.checked)?"pointer":"");
}
}
</script>
</head>
<body>
<divid="a"class="overlay1"></div>
<divid="b"class="overlay2"></div>
<ahref="http://www.php.cn/">php中文网</a>
<br/><br/>
<spanonclick="alert(3);">php中文网</span>
<p>
<inputid="chx"type="checkbox">
<labelfor="chx">开启穿透点击</label>
</p>
</body>
</html>
Tag:
什么