我有一个div,我正在用CSS对它进行转换。实际的转换如下:
.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上没有。
有什么好主意来解决这个问题吗?
发布于 2013-05-24 13:25:16
您必须为.trans类声明一个display属性才能使其工作。就是这样。
这是Working Solution。
超文本标记:
<div class="square trans">
<p>Text Here!</p>
</div>
<div class="square">
<p>Text Here!</p>
</div>CSS:
.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;
}希望这能有所帮助。
https://stackoverflow.com/questions/16728036
复制相似问题