<html>
<head>
<meta charset=UTF-8>
<title>YuGiOh</title>
<style type="text/css">
*{
margin:0
padding:0
}
#div {
position: absolute
top: 50px
left: 300px
width: 300px
height: 300px
line-height: 300px
text-align: center
border: 1px solid black
border-radius: 90px
}
</style>
<script type="text/javascript">
var deg = 0
var rotateHTML5 = function(limit) {
deg += limit
deg = deg > 360 ? 1 : deg
div.style['transform'] = div.style['-webkit-transform'] = 'rotate(' + deg + 'deg)'
}
var rotateIE = function(obj) {
var d = !! obj.d ? obj.d : 1
var r = d * Math.PI / 180
costheta = Math.cos(r)
sintheta = Math.sin(r)
obj.style.filter = "progid:DXImageTransform.Microsoft.Matrix()"
var item = obj.filters.item(0)
var width = obj.clientWidth
var height = obj.clientHeight
item.DX = -width / 2 * costheta + height / 2 * sintheta + width / 2
item.DY = -width / 2 * sintheta - height / 2 * costheta + height / 2
item.M11 = costheta
item.M12 = -sintheta
item.M21 = sintheta
item.M22 = costheta
obj.timer = setTimeout(function() {
var dx = d + 1
dx = dx > 360 ? 1 : dx
obj.d = dx
rotateIE(obj)
}, 30)
}
var start = function() {
if (!/.*MSIE.*/i.test(navigator.userAgent)) {
if ( !! div.interval) {
clearInterval(div.interval)
div.interval = null
} else {
div.interval = setInterval(function() {
rotateHTML5(1)
}, 30)
}
} else {
if ( !! div.timer) {
clearTimeout(div.timer)
div.timer = null
} else {
rotateIE(div)
}
}
}
</script>
</head>
<body>
<button onclick="start()">rotate</button>
<div id="div">ROTATE</div>
</body>
</html>
1 图片的旋转实现方式有很多,比如js实现,现在比较简单的方法是使用css3里面的;transform属性来实现,很方便的。其实这个题目很简单,在百度里面搜索一下css3旋转就看到了,里面的手册介绍的很清楚,下面是代码以及显示效果都呈现出来;
2 下面是写的一个实例代码,代码可以直接运行。代码的解释有备注哦;总共代码呢其实没有几行,主要就是 transform属性的应用 代码中的90deg就是90度的意思
<!DOCTYPEhtml>
<html>
<head>
<style>
body{margin:0pxpadding:0px}
/*{transform就是专门为img图片设置的旋转*/
#img1{transform:rotate(90deg)border:1pxsolidred}
</style>
</head>
<body>
<imgid="img1"src="38.png"/>/*页面中显示的图片*/
</body>
</html>
3代码在浏览器的运行效果图:
css代码:.rotator
{
text-align:center
}
.rotator img {
-webkit-transition: all 1s ease-in-out
-moz-transition: all 1s ease-in-out
-o-transition: all 1s ease-in-out
-ms-transition: all 1s ease-in-out
}
.rotator img:hover {
-webkit-transform: rotate(360deg)
-moz-transform: rotate(360deg)
-o-transform: rotate(360deg)
-ms-transform: rotate(360deg)
}
/*360deg是360度,度你可以自己写*/
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)