css3 中怎样实现div的2d,3d旋转?

像w3c教室那样。网址是.w3school.com.cn/css3/css3_3dtransform.asp。前边是www。那个页面有个展示效果,我想要实现那个的代码... 像w3c教室那样。网址是.w3school.com.cn/css3/css3_3dtransform.asp。 前边是www。

那个页面有个展示效果,我想要实现那个的代码
展开
 我来答
百度网友1a0f588c6
2018-03-08 · TA获得超过119个赞
知道答主
回答量:98
采纳率:50%
帮助的人:23.1万
展开全部
新建一个HTML文件粘过去:
<p onclick="rotateDIV()" id="rotate1" class="animated_div" style="transform: rotate(360deg);">2D 旋转</p>
<p onclick="rotateYDIV()" id="rotatey1" class="animated_div" style="transform: rotateY(180deg);">3D 旋转</p>
<style>
p {
margin: 12px 0 0 0;
line-height: 150%;
}
#rotate1, #rotatey1 {
border: 1px solid #000000;
background: red;
margin: 10px;
opacity: 0.7;
}
.animated_div {
width: 60px;
height: 40px;
color: #ffffff;
position: relative;
font-weight: bold;
padding: 20px 10px 0px 10px;
float: left;
margin: 20px;
margin-right: 50px;
border: 1px solid #888888;
-webkit-border-radius: 5px;
-moz-border-radius: 5px;
border-radius: 5px;
font: 12px Verdana, Arial, Helvetica, sans-serif;
line-height: normal;
text-align: center;
vertical-align: middle;
}
#rotate1,#rotatey1 { border:1px solid #000000; background:red; margin:10px; opacity:0.7; }
</style>
<script><!--var x,y,n=0,ny=0,rotINT,rotYINTfunction rotateDIV(){x=document.getElementById("rotate1")clearInterval(rotINT)rotINT=setInterval("startRotate()",10)}function rotateYDIV(){y=document.getElementById("rotatey1")clearInterval(rotYINT)rotYINT=setInterval("startYRotate()",10)}function startRotate(){n=n+1x.style.transform="rotate(" + n + "deg)"x.style.webkitTransform="rotate(" + n + "deg)"x.style.OTransform="rotate(" + n + "deg)"x.style.MozTransform="rotate(" + n + "deg)"if (n==180 || n==360) { clearInterval(rotINT) if (n==360){n=0} }}function startYRotate(){ny=ny+1y.style.transform="rotateY(" + ny + "deg)"y.style.webkitTransform="rotateY(" + ny + "deg)"y.style.OTransform="rotateY(" + ny + "deg)"y.style.MozTransform="rotateY(" + ny + "deg)"if (ny==180 || ny>=360) { clearInterval(rotYINT) if (ny>=360){ny=0} }}//--></script>
温文尔雅又倜傥的小财宝296
推荐于2016-04-07 · TA获得超过173个赞
知道小有建树答主
回答量:243
采纳率:0%
帮助的人:124万
展开全部
<!DOCTYPE html>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>demo</title>
<style type="text/css">
div {
background: #000;
color: #fff;
width: 100px;
height: 100px;
margin: 50px;
display: inline-block;
}
/*请用谷歌浏览器预览效果, 鼠标划过方块看效果*/

/*2D旋转*/
.one:hover {
-webkit-transition: all 0.5s ease-in-out;
-webkit-transform: rotate(360deg);
transition: all 0.8s ease-in-out;
}
/*3D旋转*/
.two:hover {
-webkit-transform:rotateY(360deg);
transition: all 0.8s ease-in-out;
}

/*放大*/
.three:hover {
-webkit-transform: scale(1.2);
transition: all 0.8s ease-in-out;
}

</style>
</head>

<body>
<div class="one">2D旋转</div>
<div class="two">3D旋转</div>
<div class="three">放大</div>
</body>
</html>
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
网海1书生
科技发烧友

2018-03-08 · 擅长软件设计、WEB应用开发、小程序
网海1书生
采纳数:12311 获赞数:26230

向TA提问 私信TA
展开全部
<style>
.div1, .div2{
   width:80px;
   height:40px;
   text-align:center;
   line-height:40px;
   background-color:#f88;
   border:1px solid #666;
   margin:10px;
   transition:all 2s;
}
.div1:hover{
   transform:rotate(180deg);
}
.div2:hover{
   transform:rotateY(180deg);
}
</style>
<div class=div1>2D旋转</div>
<div class=div2>3D旋转</div>
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
匿名用户
2018-03-08
展开全部

html:

<p onClick="rotateDIV()" id="rotate1" class="animated_div">2D 旋转</p>    

<p onClick="rotateYDIV()" id="rotatey1" class="animated_div">3D 旋转</p>    

JS:

var x,y,n=0,ny=0,rotINT,rotYINT    

function rotateDIV()    

{    

x=document.getElementById("rotate1")    

clearInterval(rotINT)    

rotINT=setInterval("startRotate()",10)    

}    

function rotateYDIV()    

{    

y=document.getElementById("rotatey1")    

clearInterval(rotYINT)    

rotYINT=setInterval("startYRotate()",10)    

}    

function startRotate()    

{    

n=n+1    

x.style.transform="rotate(" + n + "deg)"    

x.style.webkitTransform="rotate(" + n + "deg)"    

x.style.OTransform="rotate(" + n + "deg)"    

x.style.MozTransform="rotate(" + n + "deg)"    

if (n==180 || n==360)    

{    

clearInterval(rotINT)    

if (n==360){n=0}    

}    

}    

function startYRotate()    

{    

ny=ny+1    

y.style.transform="rotateY(" + ny + "deg)"    

y.style.webkitTransform="rotateY(" + ny + "deg)"    

y.style.OTransform="rotateY(" + ny + "deg)"    

y.style.MozTransform="rotateY(" + ny + "deg)"    

if (ny==180 || ny>=360)    

{    

clearInterval(rotYINT)    

if (ny>=360){ny=0}    

}    

}     



已赞过 已踩过<
你对这个回答的评价是?
评论 收起
我的人生01
推荐于2018-03-09 · TA获得超过126个赞
知道小有建树答主
回答量:158
采纳率:90%
帮助的人:36.4万
展开全部
上面不是写的很清楚么
div
{
transform: rotateY(130deg);
-webkit-transform: rotateY(130deg); /* Safari 和 Chrome */-moz-transform: rotateY(130deg); /* Firefox */}
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(4)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式