失眠网,内容丰富有趣,生活中的好帮手!
失眠网 > html css 实现星星海 JS实现星星海特效

html css 实现星星海 JS实现星星海特效

时间:2024-04-06 18:32:09

相关推荐

html css 实现星星海 JS实现星星海特效

本文实例为大家分享了JS实现星星海特效的具体代码,供大家参考,具体内容如下

知识点

1.CSS使用@keyframes自定义动画,使用animation调用自定义动画

2.opacity 透明度。从 0.0 (完全透明)到 1.0(完全不透明)

3.CSS中transform

4.animation-delay 属性定义动画何时开始。

5.求屏幕尺寸

var 宽 = document.documentElement.clientWidth;

var 高 = document.documentElement.clientHeight;

6.JS创建节点

7.JS在某元素后追加节点

appendChild()

8.UnderScore.js通过_调用其中的API

运行效果

代码

Title

*{margin: 0;padding-top: 0}

body{background-color: #000}

span{

width: 30px;

height: 30px;

background: url("star.png") no-repeat;

position: absolute;

background-size: contain;

animation: flash 1s alternate infinite;

}

@keyframes flash{

0%{opacity: 0}

25%{opacity: 0.25}

50%{opacity: 0.5}

75%{opacity: 0.75}

100%{opacity: 1}

}

span:hover{

transform: scale(3, 3) rotate(180deg) !important;

transition: all 1s;

}

window.onload = function (ev) {

// 1. 求出屏幕尺寸

var screenWidth = document.documentElement.clientWidth;

var screenHeight = document.documentElement.clientHeight;

// 2. 动态创建10颗星星

for (var i = 0; i < 200; i++) {

// 2.1 创建星星

var span = document.createElement('span');

document.body.appendChild(span);

// 2.2 随即坐标

var x = parseInt(_.random(0, screenWidth));

var y = parseInt(_.random(0, screenHeight));

span.style.left = x +'px';

span.style.top = y + 'px';

// 2.3 随机缩放

var scale = _.random(0, 1.5);

span.style.transform = 'scale('+scale+','+scale+')';

// 2.4 频率

var rate = _.random(0, 1.5);

span.style.animationDelay = rate + 's';

}

}

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持脚本之家。

如果觉得《html css 实现星星海 JS实现星星海特效》对你有帮助,请点赞、收藏,并留下你的观点哦!

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。