将鼠标悬停在 div 上会影响外部元素[重复]

2023-12-12

我试图在 div 悬停时影响外部元素。像这样的事情:

<div class="affected">
  Hi
</div>

<div>
  <div class="hover-me"></div>
</div>

CSS:

.hover-me:hover ~ .affected {
  color: 
}

我尝试过其他同级选择器,但它不起作用。


对于纯 CSS,这将是非常棘手的。

一种方法,IF您不需要在包含可悬停子项的 div 上使用指针事件(悬停、单击等),请将容器设置为可操作的 div,禁用指针事件,在子项上重置它们,并使用某种魔法来在 HTML 上以相反的顺序排列同级,以便可以使用同级选择器来定位它们(​​因为您无法定位之前的同级)

就像是

body{
  /*switches the oder of .affected and .hover-container, so .affected can be bellow in the HTML and be targeted with sibling selectors, while showing above*/
  display:flex;
  flex-direction:column-reverse;
}

.hover-container:hover ~ .affected{
/*targets the action on the container*/
  background:red;
}

.hover-container{
/*disables pointer-events on the container, so entering it won't cause the hover effect on the sibling*/
  pointer-events:none;
}

.hover-me{
/*resets pointer-events on the .hover-me child, so the previous :hover we set for the container will work only when hovering this child*/
  pointer-events:auto;
  cursor:pointer;
}

div{
  border:2px solid grey;
  margin:20px 40px;
  text-align:center;
}
<div class="hover-container">
  this is the hover container
  <div class="hover-me">hover me</div>
</div>

<div class="affected">
  affected
</div>

但这可能不是很常见的情况,此时使用 JS 方法会更好。

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

将鼠标悬停在 div 上会影响外部元素[重复] 的相关文章

  • Tailwind CSS:“outline”类不存在。但这不是自定义样式,而是框架类

    在一个新项目中 我得到了奇怪的行为 除了大纲和相关内容之外 一切都按预期进行 https tailwindcss com docs outline style https tailwindcss com docs outline style
  • Bootstrap 3 按钮之间的空间

    如果我将几个 Bootstrap 3 按钮排成一行
  • 如何让更大的布局适合小设备屏幕?

    我有一个小问题meta viewport元素 问题是我的布局min width比我想要使用的许多屏幕分辨率都要大 所以将其设置为 没有帮助 结果我得到的页面必须缩小以适应设备宽度 如果我什至添加像 它也不起作用 发现了一个黑客来自CSS 技
  • 是否可以全局文本对齐表列而不在每行中指定类?

    想知道提高效率的最佳方法是什么 也许使用 jQuery 我可以接受不兼容 ie7 的解决方案 如果需要的话 即使缺乏对 ie8 的支持也可以 table th td class cal center td td left td td cla
  • 为什么 Firefox 对 Helvetica 的处理方式与 Chrome 不同?

    Firefox 和 Mac 版 Chrome 中以 Helvetica 呈现的文本的垂直位置及其内容区域的大小有所不同 例如 在 Chrome 中 如果行高与字体大小相同 则下行部分将被剪裁 我调整了图中块元素的位置 保持基线一致 以说明大
  • 如何使用 CSS 绘制一个向左的三角形?

    我已经很久没有建造这个向上的三角形了 我怎样才能改变我的 CSS 使角指向左边 http jsfiddle net 3sP8q http jsfiddle net 3sP8q left corner width 0 height 0 bor
  • 如何将安全中心与 Flexbox 一起使用?

    居中的弹性盒项目可能会出现不良行为当他们溢出容器时 https stackoverflow com questions 33454533 cant scroll to top of flex item that is overflowing
  • 固定 CSS 导航栏

    我最近解决了困扰我一段时间的 CSS 导航栏问题 现在我遇到了将其固定到顶部的问题 以便当您滚动页面时它会向下滚动 我知道我需要添加的是 Position fixed 但我不知道在哪里添加它 我最近的尝试导致文本被修复 但导航栏的背景却没有
  • 两个单独表格上的 Td 高度

    我有两个单独的表 我在每个 tr 上使用焦点 悬停函数 该函数同时在两个表上都很好用 我的问题是 td 高度 因为如果第一个表中 td 的描述更大 将显示在中的两行上相同的td和td的高度将被修改 但仅限于第一个表td 如何记住第一个表中
  • CSS 背景在 iOS 中拉伸以填充高度,但滚动上有空白

    这个 CSS 让我的背景在 iOS 中填充 100 的屏幕高度 但有一个小问题 当你向下滚动时 最初有空白 然后当你松开手指并停止滚动时 背景图像会 调整 并填充 100再次屏幕高度的 如果您继续滚动 该问题不会在同一页面上再次出现 只是第
  • 不透明动画在 IE 上不起作用

    我有一个动画菜单 其中包含一些级联不透明动画 这些动画在打开菜单和悬停每个按钮时执行 它只是每 100 毫秒向菜单上的每个图标添加 colorHigh 类 你可以看到一个现场演示在这里 http germanalvarez net 5 la
  • Bootstrap 响应式图像缩放

    Using Twitter Bootstrap我意识到默认情况下它会响应式地缩放图像 这很棒 但并不总是完美的 比如说我有一个500x300桌面上的图像 然后它会针对移动设备调整大小 该图像将非常小而且不是很高 会丢失图像的大部分细节部分
  • 这个 jQuery 选择器中的“>”是什么意思?

    大于号 gt 在这里制作 Is someElement find gt someAttribute 与 someElement find someAttribute 否 它仅选择一个元素 如果它是以下元素的直接子元素 someElement
  • 如何在对角线元素上创建 CSS 边框

    这是一个例子 http jsfiddle net 52c7t http jsfiddle net 52c7t Simply 我试图让 div 位于右侧 并具有像左侧 div 一样的边框 我希望边框位于右侧 div 的左侧 我尝试了一百万种不
  • 如何使 Twitter bootstrap 模式全屏

    div class modal hide fade div class modal body div div 如何为上面的代码制作一个 Twitter 引导模式弹出全屏 我尝试使用 css 但无法按照我想要的方式得到它 任何人都可以帮我吗
  • CSS3变换:翻译最大值?

    我创建了一个实验无限滚动 Pi 的前十亿位 https daniellamb com experiments infinite pi 寻找 创建一个具有大量数据集的高性能滚动解决方案 我开始测试iScroll http iscrolljs
  • 仅使用 CSS 创建三列表? (无表格元素)

    我正在为 Django 项目创建模板 并且我需要在 HTML 中创建一个三列表 仅使用 CSS 而不是使用 table 元素 除了意识形态上对表格的反对之外 原因还在于该报告需要在台式机和黑莓等手持设备上查看 在手持设备上 我们的目标不是试
  • 自动换行在 IE 中不起作用

    自动换行如下 The Breakage of Too Long Words div break word width 690px word wrap break word 确实包装了下表的单词 但它也使表格保持拉伸 我在表的这一部分中使用了
  • 四列布局,无需媒体查询即可转换为单列

    我正在尝试创建一个四列布局 其中每列随着窗口的大小而增大和缩小 但每列都有最小宽度 当窗口太小而无法将所有四列放入单行时 它会转换到单个列 每个部分占据整个宽度 我无法使用 flex box 或 CSS 网格来做到这一点 我想在没有媒体查询
  • 打印html时在页面上打印页码

    我读过很多关于打印页码的网站 但当我尝试打印它时 我仍然无法让它显示在我的 html 页面上 所以 CSS 代码如下 page margin 10 top center font family sans serif font weight

随机推荐