最新文章专题视频专题问答1问答10问答100问答1000问答2000关键字专题1关键字专题50关键字专题500关键字专题1500TAG最新视频文章推荐1 推荐3 推荐5 推荐7 推荐9 推荐11 推荐13 推荐15 推荐17 推荐19 推荐21 推荐23 推荐25 推荐27 推荐29 推荐31 推荐33 推荐35 推荐37视频文章20视频文章30视频文章40视频文章50视频文章60 视频文章70视频文章80视频文章90视频文章100视频文章120视频文章140 视频2关键字专题关键字专题tag2tag3文章专题文章专题2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章专题3
当前位置: 首页 - 科技 - 知识百科 - 正文

使用Html5实现树叶飘落的效果

来源:动视网 责编:小采 时间:2020-11-27 15:10:21
文档

使用Html5实现树叶飘落的效果

使用Html5实现树叶飘落的效果:实现如图所示的东西效果(落叶下落):html代码:<!DOCTYPE html> <html> <head> <title>HTML5树叶飘落动画</title> <meta charset="utf-8"> <meta name=&
推荐度:
导读使用Html5实现树叶飘落的效果:实现如图所示的东西效果(落叶下落):html代码:<!DOCTYPE html> <html> <head> <title>HTML5树叶飘落动画</title> <meta charset="utf-8"> <meta name=&
 实现如图所示的东西效果(落叶下落):

html代码:

<!DOCTYPE html>
<html>
<head>
 <title>HTML5树叶飘落动画</title>
 <meta charset="utf-8">
 <meta name="viewport" content="width=500px, initial-scale=0.64">
 <link rel="stylesheet" href="leaves.css" type="text/css">
 <script src="leaves.js" type="text/javascript"></script>
</head>
<body>
 <div id="container">
 <div id="leafContainer"></div>
 <div id="message">
 <em>这是基于webkit的落叶动画</em>
 </div>
 </div> 
</body>
</html>

css代码:

body{
 background-color: #4E4226;
}#container {
 position: relative;
 height: 700px;
 width: 500px;
 margin: 10px auto;
 overflow: hidden;
 border: 4px solid #5C090A;
 background: #4E4226 url('images/backgroundLeaves.jpg') no-repeat top left;
}#leafContainer {
 position: absolute;
 width: 100%;
 height: 100%;
}#message{
 position: absolute;
 top: 160px;
 width: 100%;
 height: 300px;
 background:transparent url('images/textBackground.png') repeat-x center;
 color: #5C090A;
 font-size: 220%;
 font-family: 'Georgia';
 text-align: center;
 padding: 20px 10px;
 -webkit-box-sizing: border-box;
 -webkit-background-size: 100% 100%;
 z-index: 1;
}em {
 font-weight: bold;
 font-style: normal;
}#leafContainer > p {
 position: absolute;
 width: 100px;
 height: 100px;
 -webkit-animation-iteration-count: infinite;
 -webkit-animation-direction: normal;
 -webkit-animation-timing-function: linear;
}#leafContainer > p > img {
 position: absolute;
 width: 100px;
 height: 100px;
 -webkit-animation-iteration-count: infinite;
 -webkit-animation-direction: alternate;
 -webkit-animation-timing-function: ease-in-out;
 -webkit-transform-origin: 50% -100%;
}@-webkit-keyframes fade{
 0% { opacity: 1; }
 95% { opacity: 1; }
 100% { opacity: 0; }}

@-webkit-keyframes drop{
 0% { -webkit-transform: translate(0px, -50px); }
 100% { -webkit-transform: translate(0px, 650px); }}

@-webkit-keyframes clockwiseSpin{
 0% { -webkit-transform: rotate(-50deg); }
 100% { -webkit-transform: rotate(50deg); }}


@-webkit-keyframes counterclockwiseSpinAndFlip 
{
 0% { -webkit-transform: scale(-1, 1) rotate(50deg); }
 100% { -webkit-transform: scale(-1, 1) rotate(-50deg); }}

js代码:

const NUMBER_OF_LEAVES = 30;
function init(){
 var container = document.getElementById('leafContainer');
 for (var i = 0; i < NUMBER_OF_LEAVES; i++) {
 container.appendChild(createALeaf());
 }
}

function randomInteger(low, high){
 return low + Math.floor(Math.random() * (high - low));
}

function randomFloat(low, high){
 return low + Math.random() * (high - low);
}

function pixelValue(value){
 return value + 'px';
}

function durationValue(value){
 return value + 's';
}

function createALeaf(){
 var leafDiv = document.createElement('div');
 leafDiv.style.top = "-100px";
 leafDiv.style.left = pixelValue(randomInteger(0, 500));
 leafDiv.style.webkitAnimationName = 'fade, drop';
 var fadeAndDropDuration = durationValue(randomFloat(5, 11));
 leafDiv.style.webkitAnimationDuration = fadeAndDropDuration + ', ' + fadeAndDropDuration;
 var leafDelay = durationValue(randomFloat(0, 5));
 leafDiv.style.webkitAnimationDelay = leafDelay + ', ' + leafDelay;
 
 var image = document.createElement('img');
 image.src = 'images/realLeaf' + randomInteger(1, 5) + '.png';
 var spinAnimationName = (Math.random() < 0.5) ? 'clockwiseSpin' : 'counterclockwiseSpinAndFlip';
 image.style.webkitAnimationName = spinAnimationName;
 var spinDuration = durationValue(randomFloat(4, 8));
 image.style.webkitAnimationDuration = spinDuration;

 leafDiv.appendChild(image);
 return leafDiv;
}

window.addEventListener('load', init, false);

文档

使用Html5实现树叶飘落的效果

使用Html5实现树叶飘落的效果:实现如图所示的东西效果(落叶下落):html代码:<!DOCTYPE html> <html> <head> <title>HTML5树叶飘落动画</title> <meta charset="utf-8"> <meta name=&
推荐度:
标签: 使用 实现 效果
  • 热门焦点

最新推荐

猜你喜欢

热门推荐

专题
Top