参见英文答案 >
Click through a DIV to underlying elements14个答案有没有办法,在CSS中,我可以创建一个元素点击通过。我有一个绝对定位的< div>覆盖一个链接。我想要通过覆盖< div>点击链接。覆盖层具有大部分透明的背景,并且链接没有覆盖像素。
我已经尝试了背景:url(‘…’)透明,但无济于事。
Here是一个JSFiddle演示我的问题。该链接可以在IE8中单击,但不能在FireFox中。我想做的是在#underlay div中创建一个图像代码。覆盖层是这样的,我可以在底部和顶部具有从实体到透明的渐变的背景,所以我可以使图像“滚动到任何东西”,而不会立即衰减整个图像,如果这是有道理的(如果有人有Android手机,请尝试滚动您的备忘录并观看屏幕的顶部/底部 – 备忘录淡入淡出)。
解决方法
我通过添加指针事件来解决你的问题:none;到绝对块。
body { margin: 0; padding-left: 10px; font: 20px Arial,sans-serif; line-height: 30px; } a:hover { color: red; } #overlay-blocking,#overlay-passing{ position: absolute; height: 30px; width: 10em; left: 0; } #overlay-blocking { top: 30px; background: rgba(0,100,.2); pointer-events: none; } #overlay-passing { top: 0; background: rgba(100,.2); }
<a href="#">Link blocked</a><br> <a href="#" title="hoverable">Link available</a><br> <a href="#" title="hoverable">Link available</a><br> <div id="overlay-blocking"></div> <div id="overlay-passing"></div>