ページのヘッダー内のロゴ div の CSS 3D 変換を作成しました。ホバーすると、ロゴが回転します。Chrome ではすべて問題なく表示されますが、Firefox ではまったく異なって表示されます。
変換原点をロゴ div の左側に移動しました。回転すると、div の右側が「圧縮」されて視覚的な 3D 効果が得られます。Firefox では、ロゴの div が小さくなるだけで「圧縮」されず、3D 効果が見えません。
コード:
<!doctype html>
<html lang="de">
<head>
<meta charset="UTF-8" />
<title>test</title>
<style>
#header {
width: 940px;
margin: auto;
background-color: blue;
height: 350px;
position: relative;
-webkit-perspective: 800;
-moz-perspective: 800;
}
#logo {
width: 300px;
height: 80px;
background-color: red;
position: absolute;
top: 50px;
left: 0px;
-webkit-transition-duration: 0.25s;
-webkit-transform-origin: 0% 50%;
-webkit-transform-style: preserve-3d;
-webkit-transform: rotate3d(0,1,0,0deg);
-moz-transition-duration: 0.25s;
-moz-transform-origin: 0% 50%;
-moz-transform-style: preserve-3d;
-moz-transform: rotate3d(0,1,0,0deg);
}
#logo:hover {
-webkit-transition-duration: 0.5s;
-webkit-transform: rotate3d(0,1,0,45deg);
-moz-transition-duration: 0.5s;
-moz-transform: rotate3d(0,1,0,45deg);
}
</style>
</head>
<body>
<div id="header">
<div id="logo"></div>
</div>
</body>
</html>
次の JSFiddle を試してください: http://jsfiddle.net/4CN5g/
私が間違っていることは何か分かりますか?