css3里关于背景的属性增加了可以添加多背景图的特性,例如:

.box{background: url(img/1.png),url(img/2.png),url(img/3.png);}

这段css代码,就给.box元素添加了三张背景图,而正因为有了这样一个功能,我们可以利用不停的变换这三张背景图的位置来实现幻灯片切换的效果。

html代码非常精简,如下:

<body>
<div class="box"> </div>
</body>

简单的给一些样式:

.box{
width: 300px;
height: 300px;
border: 1px solid #ccc;
background: url(img/1.png),url(img/2.png),url(img/3.png); //加载三张图片
background-repeat: no-repeat; //不重复
background-size: 100%,100%,100%; //设定图片显示尺寸,保障充满整个div
background-position: 0 0,-500px -500px,-500px -500px; //设置三个图片的偏移量
}

以下是js部分(jq代码):

//把背景偏移值放在一个数组里
var arr= $('.qqq').css('backgroundPosition').split(',');
var num=0;
setInterval(function () {
//判断num值超过变成0
if (num==arr.length) {
num=0
}
//先把所有的图片偏移出去
for (var i=0;i<arr.length;i++) {
arr[i]='-500px -500px';
}
//把当前的图片偏移值设为0
arr[num]='0 0';
//把弄好的数组转换成字符串,赋予样式
var str=arr.join(',');
$('.qqq').css('backgroundPosition',str);
num++;
},1000)

这种方法实现会比以前的在图片外面套个div效率可高多了,代码也减少了许多。

利用css3的多背景图属性实现幻灯片切换效果的更多相关文章

  1. css常用属性之绝对定位、相对定位、滚动条属性、背景图属性、字体、鼠标、超链接跳转页面

    1.绝对定位position: fixed(比如广告页面向下滑动的时候,页面最上方有个标题不能随之滑动,就需要用到position: fixed,同时还需要用到一个标签(标签高度很高才会出现滚动的情况 ...

  2. 纯代码利用CSS3 圆角边框和盒子阴影 制作 iphone 手机效果

    原文:纯代码利用CSS3 圆角边框和盒子阴影 制作 iphone 手机效果 大家好,我是小强老师. 今天我们看下CSS3最为简单的两个属性. css3给我们带来了很多视觉的感受和变化,以前的图片做的事 ...

  3. css3处理sprite背景图压缩来解决H5网页在手机浏览器下图标模糊的问题

    近期在负责一个微信H5 App项目,遇到一个郁闷的问题,手机浏览器查看网页时图标都是模糊的,有锯齿,电脑浏览器显示则是正常.大概知道是分辨率适配等类型的问题,后来网上查找了一些办法.大部分的解决方式都 ...

  4. CSS3制作文字背景图

    文字带上渐变色,或者说让文字透出图片.这些效果 CSS 属性也可以完成. 方法一.利用CSS3属性mix-blend-mode:lighten;实现 使用 mix-blend-mode 能够轻易实现, ...

  5. 利用media query让背景图适应不同分辨率的设备

    随着上网方式的多样化,用户选择上网的工具不再仅是PC,而可以是手机,或者平板电脑.随之而来的问题是如何让网页适应不同分辨率,这给前端工程师们带来了新的挑战,其中重要的一点是如何让图片能在不同的分辨率下 ...

  6. CSS3之body背景图平铺

    你再也不需要因为屏幕大小不同而去选择多张图片作为背景图了,css3教你做人: body { background: url('xx.jpg')top center no-repeat; backgro ...

  7. css3神奇的背景控制属性+使用颜色过渡实现漂亮的渐变效果

    css3背景图像相关 兼容性:IE9+ background-clip  背景图片绘制区域 background-clip:border-box; 内容区 <!DOCTYPE html> ...

  8. 利用css3实现超出文本指定行数与省略号效果

    <style> .text1 {/*单行*/ width:200px; overflow:hidden; text-overflow:ellipsis; -o-text-overflow: ...

  9. 利用jquery实现网站中对应栏目下面内容切换效果。

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...

随机推荐

  1. BZOJ 2560(子集DP+容斥原理)

    2560: 串珠子 Time Limit: 10 Sec  Memory Limit: 128 MBSubmit: 757  Solved: 497[Submit][Status][Discuss] ...

  2. fdisk 添加逻辑分区

    [root@riyimei ~]# fdisk /dev/sdb WARNING: DOS-compatible mode is deprecated. It's strongly recommend ...

  3. 【codeforces 29B】Traffic Lights

    [题目链接]:http://codeforces.com/problemset/problem/29/B [题意] 一辆车; 让从A开到B; 然后速度是v; (只有在信号灯前面才能停下来..否则其他时 ...

  4. linux文件时间的查看和改动touch

    1. linux文件的时间 linux下文件时间主要有以下三种: 1.1 modification time(mtime) 文件改动时间.即文件内容的改动时,更新这个时间.不包含文件权限和属性的改动. ...

  5. bzoj1001: [BeiJing2006]狼抓兔子(初识是你最小割)

    1001: [BeiJing2006]狼抓兔子 题目:传送门 题解: 听说这题当初是大难题...可惜当年没有网络流hahahha 现在用网络流的思想就很容易解决了嘛 给什么连什么,注意是双向边,然后跑 ...

  6. iOS开发-sqlite3使用

    SQLite3使用 SQLite简介 SQLite,是一款轻型的数据库,是遵守ACID的关系型数据库管理系统,它包含在一个相对小的C库中. SQLite3 在XCode工程中,打开targets,在B ...

  7. 8.ES6测试

    转自:http://www.ruanyifeng.com/blog/2015/12/a-mocha-tutorial-of-examples.html 如果测试脚本是用ES6写的,那么运行测试之前,需 ...

  8. POJ 3669 简单BFS

    标号 搜 完了-- //By SiriusRen #include <queue> #include <cstdio> #include <cstring> #in ...

  9. Java基础学习补充 -- 异常处理和log4j日志

    Java中的异常处理 异常是程序中的一些错误,但并不是所有的错误都是异常,并且错误有时候是可以避免的. Java中所有异常的基类Throwable:Throwable又分为Error类和Excepti ...

  10. 数据分页jdbc+mysql实现

    通过简单粗糙的功能不完善的客户管理案例体现jdbc+mysql的数据分页,与其说是管理系统,不如说就是一个jdbc数据分布的demo而已.但是话又说回来,麻雀虽小,五脏俱全.虽然是个小demo,但是其 ...