CSS 中实现同类型兄弟元素悬停联动效果(如所有红色行同时高亮)

本文介绍如何利用 css :has() 伪类实现"悬停任一同类元素时,所有同类型兄弟元素同步响应样式变化",无需 javascript,纯 css 可控,适用于分组高亮等交互场景。 本文介绍如何利用 css :has() 伪类实现"悬停任一同类元素时,所有同类型兄弟元素同步响应样式变化",无需 javascript,纯 css 可控,适用于分组高亮等交互场景。在传统 CSS 中,选择器无法向上查找父元素或横向影响其他兄弟元素------这意味着仅靠 .red-row:hover 只能改变当前被悬停的元素自身样式,无法波及同组其他 .red-row 元素。但现代 CSS 提供了突破性方案::has() 伪类,它允许我们基于子元素的状态(例如是否被悬停)来为祖先元素设置条件样式,从而间接驱动其后代中所有匹配元素的样式更新。核心思路是:将所有目标元素包裹于同一父容器内,并在该父容器上使用 :has() 检测是否存在某类元素处于 :hover 状态;一旦满足条件,即对容器内所有同类元素统一应用样式。以下为完整可运行示例:<div class="row-group"> <p class="red-row">Red Row</p> <p class="red-row">Red Row</p> <p class="red-row">Red Row</p> <p class="blue-row">Blue Row</p> <p class="blue-row">Blue Row</p> <p class="blue-row">Blue Row</p></div>对应 CSS 如下:立即学习"前端免费学习笔记(深入)"; 通义听悟 阿里云通义听悟是聚焦音视频内容的工作学习AI助手,依托大模型,帮助用户记录、整理和分析音视频内容,体验用大模型做音视频笔记、整理会议记录。

相关推荐
CLX0505几秒前
Layui弹出层layer.open如何实现窗口在指定时间后自动最大化
jvm·数据库·python
m0_62457859几秒前
如何在Bootstrap中制作一个响应式的团队介绍页面
jvm·数据库·python
心流时间1 分钟前
读书笔记-PostgreSQL实战
数据库·postgresql
X56612 分钟前
golang如何实现表单验证_golang表单验证实现方法
jvm·数据库·python
dfdfadffa3 分钟前
如何在新电脑上正确运行已部署的 Django 项目
jvm·数据库·python
m0_748554815 分钟前
Golang怎么设置响应状态码_Golang如何用WriteHeader返回404或500状态【基础】
jvm·数据库·python
a7963lin5 分钟前
如何处理Data Guard环境的口令更换_SYS密码修改后的主备库密码文件分发机制
jvm·数据库·python
ooseabiscuit6 分钟前
Laravel3.x核心特性全解析
java·数据库·spring
xcLeigh8 分钟前
KES数据库自动创建表空间目录,不用再提前建文件夹了
数据库·oracle·自动化·表空间·文件夹
2401_846339568 分钟前
mysql如何查询所有列_mysql select星号性能分析
jvm·数据库·python