专栏首页阿珏酱的BlogCSS3随机背景图片切换特效

CSS3随机背景图片切换特效

css3的随机背景图片淡入淡出切换特效  演示效果如本篇文章背景所示

看大家扒我的幻想领域二次元限定版扒的比较累,扒了大半个小时的,抽空整理一下发出来

设计之初本来是打算使用jQuery进行实现的,但是注意到了css3的@keyframes 规则,css3已经强大到曾经只有js才能实现的效果

定义和用法

通过 @keyframes 规则,您能够创建动画。

创建动画的原理是,将一套 CSS 样式逐渐变化为另一套样式。

在动画过程中,您能够多次改变这套 CSS 样式。

以百分比来规定改变发生的时间,或者通过关键词 "from" 和 "to",等价于 0% 和 100%。

0% 是动画的开始时间,100% 动画的结束时间。

为了获得最佳的浏览器支持,您应该始终定义 0% 和 100% 选择器。

注释:请使用动画属性来控制动画的外观,同时将动画与选择器绑定。

核心css部分(记得切换图片地址)

body {
	background: #000;
	background-attachment: fixed;
	word-wrap: break-word;
	-webkit-background-size: cover;
	-moz-background-size: cover;
	background-size: cover;
	background-repeat: no-repeat
}

ul {
	list-style: none
}

.cb-slideshow li:nth-child(1) span {
	background-image: url(https://random.52ecy.cn/randbg.php?v=1520341099)
}

.cb-slideshow li:nth-child(2) span {
	background-image: url(https://random.52ecy.cn/randbg.php?v=1520341159)
}

.cb-slideshow li:nth-child(3) span {
	background-image: url(https://random.52ecy.cn/randbg.php?v=1520341149)
}

.cb-slideshow li:nth-child(4) span {
	background-image: url(https://random.52ecy.cn/randbg.php?v=1520341139)
}

.cb-slideshow li:nth-child(5) span {
	background-image: url(https://random.52ecy.cn/randbg.php?v=1520341129)
}

.cb-slideshow li:nth-child(6) span {
	background-image: url(https://random.52ecy.cn/randbg.php?v=1520341119)
}

.cb-slideshow,.cb-slideshow:after {
	position: fixed;
	width: 100%;
	height: 100%;
	top: 0;
	left: 0;
	z-index: -2
}

.cb-slideshow:after {
	content: ''
}

.cb-slideshow li span {
	width: 100%;
	height: 100%;
	position: absolute;
	top: 0;
	left: 0;
	color: transparent;
	background-size: cover;
	background-position: 50% 50%;
	background-repeat: none;
	opacity: 0;
	z-index: -2;
	-webkit-backface-visibility: hidden;
	-webkit-animation: imageAnimation 36s linear infinite 0s;
	-moz-animation: imageAnimation 36s linear infinite 0s;
	-o-animation: imageAnimation 36s linear infinite 0s;
	-ms-animation: imageAnimation 36s linear infinite 0s;
	animation: imageAnimation 36s linear infinite 0s
}

.cb-slideshow li:nth-child(2) span {
	-webkit-animation-delay: 6s;
	-moz-animation-delay: 6s;
	-o-animation-delay: 6s;
	-ms-animation-delay: 6s;
	animation-delay: 6s
}

.cb-slideshow li:nth-child(3) span {
	-webkit-animation-delay: 12s;
	-moz-animation-delay: 12s;
	-o-animation-delay: 12s;
	-ms-animation-delay: 12s;
	animation-delay: 12s
}

.cb-slideshow li:nth-child(4) span {
	-webkit-animation-delay: 18s;
	-moz-animation-delay: 18s;
	-o-animation-delay: 18s;
	-ms-animation-delay: 18s;
	animation-delay: 18s
}

.cb-slideshow li:nth-child(5) span {
	-webkit-animation-delay: 24s;
	-moz-animation-delay: 24s;
	-o-animation-delay: 24s;
	-ms-animation-delay: 24s;
	animation-delay: 24s
}

.cb-slideshow li:nth-child(6) span {
	-webkit-animation-delay: 30s;
	-moz-animation-delay: 30s;
	-o-animation-delay: 30s;
	-ms-animation-delay: 30s;
	animation-delay: 30s
}

@-webkit-keyframes imageAnimation {
	0% {
		opacity: 0;
		-webkit-animation-timing-function: ease-in
	}

	8% {
		opacity: 1;
		-webkit-transform: scale(1.05);
		-webkit-animation-timing-function: ease-out
	}

	17% {
		opacity: 1;
		-webkit-transform: scale(1.1) rotate(0)
	}

	25% {
		opacity: 0;
		-webkit-transform: scale(1.1) rotate(0)
	}

	100% {
		opacity: 0
	}
}

当然还是需要配合HTML代码的

HTML部分(其中的文字部分和<li>的数量是可以随意更改的)

<ul class="cb-slideshow">
	<li>
		<span>幻想</span></li>
	<li>
		<span>领域</span></li>
	<li>
		<span>一个</span></li>
	<li>
		<span>专业的</span></li>
	<li>
		<span>二次元</span></li>
	<li>
		<span>图床</span></li>
</ul>

注意:<li>的数量要和css对应上,并且至少要两个以上。另外ie浏览器是不支持CSS3的特效

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 各种语言按钮事件特征码

    比如:弹提示框,就下MessageBoxA,注册表的,就下RegOpenKeyA等等

    阿珏
  • 程序员日常中病毒系列

    事情是这样的,一朋友发来源码让我看下,手残不小心点到里头的一个exe文件,弹出联网请求,我便迅速关掉,之后发现同目录多了一个伪装成系统音乐文件夹的exe可执行...

    阿珏
  • QQ、支付宝、微信收款码三合一

    就是一个体现套字,包含上传二维码,识别二维码,生成三合一收款码,一整套流程服务。

    阿珏
  • CSS3随机背景图片切换特效

    Youngxj
  • 【晓头条】微信钱包支持关闭指纹支付 / 腾讯入股步步高将布局小程序 / 李书福成奔驰大股东

    1. 腾讯携手环球蓝联在西班牙马德里机场推出微信扫码实时退税服务。中国大陆旅客在离境机场,可通过「腾讯退税通」小程序快捷退税,退税将实时以人民币形式存入微信钱包...

    知晓君
  • 第一次!Apple Watch+微信=……

    北京时间3月10日凌晨, 美国旧金山芳草地艺术中心, 苹果新品发布会。 熬夜的果粉们,突然在屏幕上看到一个熟悉的身影:是的,你没看错,苹果的发布会上第一次出现并...

    腾讯大讲堂
  • Netflix、IBM、阿里等世界级FaaS、K8s、Istio核心架构案例都在这里

    纯洁的微笑
  • Re2Pcap:由原始http请求响应创建pcap数据包

    Re2Pcap是英文单词Request2Pcap和Response2Pcap的缩写。Community版的用户可以使用Re2Pcap快速的创建PCAP文件,并根...

    FB客服
  • 11月编程语言排行榜:Python逆袭C#上升到第4

    TIOBE 11 月编程语言排行榜,Python 逆袭C# 曾经有一段时间,脚本语言因其易于编写和易于运行的特性,被预测在未来将发展强大。因此,Perl,P...

    顶级程序员
  • SpringBoot2.0 基础案例(10):整合Mybatis框架,集成分页助手插件

    MyBatis 是一款优秀的持久层框架,它支持定制化 SQL、存储过程以及高级映射。MyBatis 避免了几乎所有的 JDBC 代码和手动设置参数以及获取结果集...

    知了一笑

扫码关注云+社区

领取腾讯云代金券