1,绝对定位元素(未设置background)遮住Input元素,只在IE/Opera中,Input的点击事件能触发。
07 | <div class= "container" > |
08 | <input type= "button" value= "click me" onclick= "alert('clicked');" /> |
09 | <div style="filter:alpha(opacity=30);opacity:0.3; |
10 | border:1px solid gold;position:absolute; |
11 | top:0;left:0;100px;height:50px;"> |
示例:
Div[class=container] 中有子元素Input,其添加了鼠标单击事件;另一个子元素Div设置了绝对定位,top,left都为0。这样就遮盖住了Input元素。这是点击Input,看看各浏览器中的表现
IE6/7/8/Opera : 弹出提示框:clicked
Firefox/Safari/Chrome : 不弹
很神奇,IE6/7/8/Opera 中虽然绝对定位的div盖住了input,但点击input,仍然能触发其点击事件。而Firefox/Safari/Chrome 则不会触发。
2,绝对定位元素(设置background)遮住Input元素,所有浏览器中均无法触发Input的点击事件。
2 | < input type = "button" value = "click me" onclick = "alert('clicked');" /> |
3 | < div style="filter:alpha( opacity = 30 );opacity:0.3; |
4 | border:1px solid gold;position:absolute; |
5 | top:0;left:0;100px;height:50px;background:yellow;"> |
示例:
这时候在所有浏览器中点击input都无法触发其点击事件,也不会弹出clicked。
3,相对定位的元素(未设置背景色)能盖住绝对定位的元素,也只在IE/Opera中能触发Input点击事件。
2 | < input type = "button" value = "click me" onclick = "alert('clicked');" style = "position:absolute;" /> |
3 | < div style="filter:alpha( opacity = 30 );opacity:0.3; |
4 | border:1px solid gold;position:relative; |
示例:
4,相对定位的元素(设置背景色)能盖住绝对定位的元素,所有浏览器中均无法触发Input点击事件。
2 | < input type = "button" value = "click me" onclick = "alert('clicked');" style = "position:absolute;" /> |
3 | < div style="filter:alpha( opacity = 30 );opacity:0.3; |
4 | border:1px solid gold;position:relative; |
5 | 100px;height:50px;background:gray;"> |
示例: