首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >CSS Hover on Elements with Transformation [Chrome/Webkit Bug]

CSS Hover on Elements with Transformation [Chrome/Webkit Bug]
EN

Stack Overflow用户
提问于 2013-05-24 13:10:41
回答 1查看 2.2K关注 0票数 1

我有一个div,我正在用CSS对它进行转换。实际的转换如下:

代码语言:javascript
复制
.trans{
  transform-origin: right center;
  transform: perspective( 600px ) rotateY( -30deg) translateZ(1px);
  -webkit-transform-origin: right center;
  -webkit-transform: perspective( 600px ) rotateY( -30deg) translateZ(150px);
}

据我所知,问题是这会将div旋转到页面“后面”的深度。它可以正确显示,但似乎不能与鼠标正确交互。所以我的悬停状态的CSS类在这些元素上根本不起作用。

您可以查看reduced testcase。在结果窗格中,请注意,左侧的正方形未正确更改背景颜色,但右侧的正方形更改了背景颜色。这个bug发生在Chrome上,但在我测试的时候,Firefox或IE上没有。

有什么好主意来解决这个问题吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2013-05-24 13:25:16

您必须为.trans类声明一个display属性才能使其工作。就是这样。

这是Working Solution

超文本标记:

代码语言:javascript
复制
<div class="square trans">
    <p>Text Here!</p>
</div>
<div class="square">
    <p>Text Here!</p>
</div>

CSS:

代码语言:javascript
复制
.square{
    background-color: #ffffff;
    border-radius: 4px;
    border-color: #222222;
    border width: 6px;
    border-style: dotted;
    display:inline-block;
    float:left;
}

.trans{
    transform-origin: right center;
    transform: perspective( 600px ) rotateY( -30deg);
    -webkit-transform-origin: right center;
    -webkit-transform: perspective( 600px ) rotateY( -30deg);
    display:table-cell;

}

/* Doesn't work on transformed square! */
.square:hover{
     background-color: #ff0000;
}

希望这能有所帮助。

票数 5
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/16728036

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档