微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

如何使用CSS转换在屏幕上滑动div?

我的网页上有两个div,A和B. Div A可见,Div B隐藏.

用户点击div A中的链接时,我想在屏幕上“滑动”div A(通过左边缘离开),并在屏幕上滑动div B(通过右边缘进入).

我发现ipad上的jquery动画非常慢,所以我想使用webkit CSS动画代替,我相信它是用硬件渲染的.我该怎么做呢?

解决方法

下面是一个示例,说明如何使用webkit动画执行此操作.您可能还会阅读本文以获取更多背景信息: http://webkit.org/blog/138/css-animation/

圆角只是为了表明页面正在移出屏幕,而不仅仅是改变宽度.

主要思想是为左侧CSS属性设置动画并使用容器div进行剪裁.

<!DOCTYPE html>
<html>
<head>
<style>
div {
  width: 50px;
  height: 50px;
  -webkit-border-radius: 15px;
}

#left {
  position: absolute;
  background-color: blue;
  -webkit-transition: left 1s ease-in; 
}

#right {
  position: absolute;
  left: 50px;
  background-color: green;
  -webkit-transition: left 1s ease-in; 
}

#left.animate {
  left: -50px;
}

#right.animate {
  left: 0px;
}

#container {
  position: relative;
  overflow:hidden;
}
</style>
<script>

function animate() {
  document.getElementById('left').className = 'animate';
  document.getElementById('right').className = 'animate';
}
</script>
</head>
<body>
<div id='container'><div id='left'></div><div id='right'></div></div>
<input type='button' onclick='animate();' value='Animate!'></input>
</body>
</html>

原文地址:https://www.jb51.cc/css/215700.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。