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

鼠标悬停.imgBox时.rollOver的transform未生效,原因及解决方法

问题原因分析与解决

首先,你的hover效果不生效的核心问题是CSS选择器写反了!

看你写的这段CSS:

.rollOver .imgBox:hover{ transform: translateX(-200px); }

这个选择器的意思是:选中.rollOver内部的.imgBox元素,当这个.imgBox被hover时应用transform。但你的DOM结构是.imgBox包裹着.rollOver,所以这个选择器根本找不到对应的元素,自然不会有任何效果。

当你鼠标悬停在.imgBox上时,.rollOver元素不会有任何变化,因为没有正确的CSS规则触发它的属性修改。

修正方案

把hover选择器改成正确的嵌套关系:当.imgBox被hover时,修改它内部的.rollOver的transform属性,代码如下:

body{ margin: 0; padding: 0; }
.imgBox{ width: 500px; height: 500px; position: relative; overflow: hidden; /* 避免元素超出容器显示 */ }
img{ width: 100%; height: 100%; object-fit: cover; /* 让图片保持比例适配容器,避免拉伸变形 */ }
.rollOver{ position: absolute; left: 0px; top: 0px; background-color: rgba(3, 3, 3, 0.897); height: 100%; width: 100%; transform: translateX(-300px); transition:all .4s ease; }
.imgBox:hover .rollOver{ transform: translateX(-200px); } /* 修正后的选择器 */

内容的提问来源于stack exchange,提问作者Eirik Vattøy

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.15 06:34:58