【发布时间】:2013-05-13 12:04:45
【问题描述】:
我想复制这个基于this awesome tutorial 准备的jsfiddle(请查看the demo)。但我不想要按键功能,只需要悬停即可。
但这仅使用 2 个面(正面和背面)。
我试过了,像这样:
#cube {
position: relative;
margin: 100px auto 0;
height: 300px;
width: 300px;
-webkit-transition: -webkit-transform .5s linear;
-webkit-transform-style: preserve-3d;
-moz-transition: -moz-transform .5s linear;
-moz-transform-style: preserve-3d;
}
.face {
position: absolute;
height: 300px;
width: 300px;
padding: 0px;
background-color: rgba(50, 50, 50, 1);
font-size: 27px;
line-height: 1em;
color: #fff;
border: 1px solid #555;
border-radius: 3px;
}
#cube .one {
-webkit-transform: rotateX(90deg) translateZ(150px);
-moz-transform: rotateX(90deg) translateZ(150px);
background:red;
}
#cube .two {
-webkit-transform: translateZ(150px);
-moz-transform: translateZ(150px);
background:gold;
}
#cube .three {
-webkit-transform: rotateY(90deg) translateZ(150px);
-moz-transform: rotateY(90deg) translateZ(150px);
background:blue;
}
#cube .four {
-webkit-transform: rotateY(180deg) translateZ(150px);
-moz-transform: rotateY(180deg) translateZ(150px);
background:green;
}
#cube .five {
-webkit-transform: rotateY(-90deg) translateZ(150px);
-moz-transform: rotateY(-90deg) translateZ(150px);
background:orange;
}
#cube .six {
-webkit-transform: rotateX(-90deg) rotate(180deg) translateZ(150px);
-moz-transform: rotateX(-90deg) rotate(180deg) translateZ(150px);
}
#cube:hover{
transform:rotateY(90deg);
}
但是效果好像不太一样。
你认为实现这个第一小提琴所需的最小 div 是多少?
谢谢。
【问题讨论】:
-
我现在有点怀疑我的答案,因为问题中实际上有 2 个 jsFiddle 演示。第一个小提琴没有front和back,它实际上是一个front和side。那么你想要帮助哪个小提琴?另外,你想要 front 和 back 旋转吗?
-
第二个。我是否无法从小提琴 1 中删除不需要的 div(效果很好),所以我需要第二个小提琴的帮助;仅使用 2 个面。谢谢!
-
好的,感谢您的澄清。那么应该是哪2张脸呢?您要旋转连接的 2 个面 - front 和 side - 还是 front 和 back哪些没有连接?
-
我已经更新了与其他演示小提琴匹配的 front 和 side 面旋转的答案。