我有一个涉及大量绝对位置和z索引的页面布局,因此有很多相互重叠的元素.

其中一个元素只包含文本,它悬停在许多其他内容之上.

在该元素下面有几个应用了CSS悬停伪类的元素.

当鼠标经过包含文本的元素时,我希望下面的元素以某种方式响应鼠标的存在并激活伪类样式.

有没有办法设计一个元素的样式,使悬停可以通过它到达下面的任何元素?

对于JavaScript,这不会太难,但是我现在不想走这条路,这样可以让事情变得尽可能简单.稍后我将用JavaScript将事情复杂化.

谢谢

附注:我已经在使用HTML5和CSS3了,所以我对使用这些新标准的解决方案没有问题.

推荐答案

可以对顶部的元素使用pointer-events: none;:

div {
   width   : 200px;
   height  : 200px;
   float   : left;
   cursor  : pointer;
   border  : 1px green solid;
}

div + div:hover { background: #a1a6c8; }

div:first-child {
   pointer-events : none;
   position       : absolute;
   top            : 100px;
   left           : 100px;
   border         : 1px green solid;
   background     : #c1c6c8;
}
  <div> on top of all: hover me </div>
  <div>1</div>
  <div>2</div>
  <div>3</div>
  <div>4</div>
  <div>5</div>
  <div>6</div>


    

如您所见,当您将鼠标悬停在顶部的元素上时,后面的元素将被激活.有关此属性的详细信息:https://developer.mozilla.org/en/CSS/pointer-events

Css相关问答推荐

以百分比形式输入的css宽度属性不会生效

日期面板未与Angular中的日期控件对齐

我应该在哪里放置expo /Reaction本地项目的CSS重置文件?

我的css是我的react 应用程序没有按预期工作

导航栏没有使用nextui获取页面的全部宽度

根据现有值计算CSS变量的新值

before 元素的过渡效果

如何在悬停另一个部分的元素时使元素可见?

我在 ins 标签中有一个 img 标签,更改 ins 格式覆盖图像的视图

CSS中元素的重叠

从 Angular SCSS 生成 CSS?

在同一旋转中以度数变换旋转

如何使半圆的边框淡出?

CSS3 变换:旋转;在 IE9 中

在 CSS 或 JavaScript 中反转图像的 colored颜色

如何在 CSS 中控制列表样式类型光盘的大小?

ID 在整个页面中必须是唯一的吗?

使用边距:0 自动;在 Internet Explorer 8 中

我应该在我的 Bootstrap 项目中使用 normalize.css 吗?

height: 100% 或 min-height: 100% 用于 html 和 body 元素?