You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

无前置兄弟CSS选择器时,hover<a>如何修改前置<div>样式?

实现hover链接时修改前置div样式的方法

纯CSS方案(适配现代浏览器)

如今:has()选择器的浏览器支持度已经足够广泛,你可以直接通过它实现需求:

section:has(> a:hover) > div {
  /* 示例样式,替换成你需要的修改 */
  color: #ff4400;
  background-color: #f5f5f5;
}

如果需要兼容旧版浏览器,这个方案不适用,建议用下面的JS方案。

简单JavaScript方案(全浏览器兼容)

通过原生JS监听链接的鼠标事件,给目标div添加/移除样式类即可:

步骤1:定义样式类

.div-active {
  /* 这里写hover时要应用的样式 */
  font-size: 1.1em;
  font-weight: 600;
}

步骤2:添加JS事件监听

const hoverLink = document.querySelector('section > a');
const targetDiv = document.querySelector('section > div');

hoverLink.addEventListener('mouseover', () => {
  targetDiv.classList.add('div-active');
});

hoverLink.addEventListener('mouseout', () => {
  targetDiv.classList.remove('div-active');
});

这个方案兼容性拉满,代码逻辑简单,不需要依赖任何框架。

内容的提问来源于stack exchange,提问作者Innarq

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.21 06:15:40