作者 | 杨小爱

写在前面

今天是七夕节,在这里,我先祝大家七夕节快乐,有情人终成眷属。我们节也要过,学习也要继续,因此,今天我们来实现一个漂亮的七夕幻灯轮播图效果,这个效果我个人觉得非常实用,如果你把这些背景图片换成你心意对象的照片,也依然可以。

这些图片素材,都是我在网上下载的,所以,图片素材就不额外提供了,你直接把素材换成你自己的图片素材就可以了。

下面,我们就一起来看一下今天练习的最终效果:

HTML代码:

<!DOCTYPE html>
<html><head><meta charset="UTF-8" /><meta name="viewport" content="width=device-width, initial-scale=1.0" /><!--字体图标文件--><link rel="stylesheet" href="https://cdn.staticfile.org/font-awesome/4.7.0/css/font-awesome.css"><title>【每日一练】39—背景轮播图效果的实现</title></head><body><div class="slider-container"><div class="slide active" style="background-image: url('images/01.jpg');"></div><div class="slide"  style="background-image: url('images/02.jpg');"></div><div class="slide" style="background-image: url('images/03.jpg');"></div><div class="slide" style="background-image: url('images/04.jpg');"></div><div class="slide" style="background-image: url('images/05.jpg');"></div><button class="arrow left-arrow" id="left"><!--字体图标代码--><i class="fa fa-arrow-left"></i></button><button class="arrow right-arrow" id="right"><!--字体图标代码--><i class="fa fa-arrow-right"></i></button></div></body>
</html>

CSS代码:

* {box-sizing: border-box;
}body {font-family: 'Roboto', sans-serif;display: flex;flex-direction: column;align-items: center;justify-content: center;height: 100vh;overflow: hidden;margin: 0;background-position: center center;background-size: cover;transition: 0.4s;
}body::before {content: '';position: absolute;top: 0;left: 0;width: 100%;height: 100vh;background-color: rgba(0, 0, 0, 0.7);z-index: -1;
}.slider-container {box-shadow: 0 3px 6px rgba(0, 0, 0, 0.16), 0 3px 6px rgba(0, 0, 0, 0.23);height: 70vh;width: 70vw;position: relative;overflow: hidden;
}.slide {opacity: 0;height: 100vh;width: 100vw;background-position: center center;background-size: cover;position: absolute;top: -15vh;left: -15vw;transition: 0.4s ease;z-index: 1;
}.slide.active {opacity: 1;
}.arrow {position: fixed;background-color: transparent;color: #fff;padding: 20px;font-size: 30px;border: 2px solid orange;top: 50%;transform: translateY(-50%);cursor: pointer;
}.arrow:focus {outline: 0;
}.left-arrow {left: calc(15vw - 65px);
}.right-arrow {right: calc(15vw - 65px);
}

JS代码:

const body = document.body
const slides = document.querySelectorAll('.slide')
const leftBtn = document.getElementById('left')
const rightBtn = document.getElementById('right')
let activeSlide = 0
rightBtn.addEventListener('click', () => {activeSlide++if (activeSlide > slides.length - 1) {activeSlide = 0}setBgToBody()setActiveSlide()
})
leftBtn.addEventListener('click', () => {activeSlide--if (activeSlide < 0) {activeSlide = slides.length - 1}setBgToBody()setActiveSlide()
})
setBgToBody()
function setBgToBody() {body.style.backgroundImage = slides[activeSlide].style.backgroundImage
}
function setActiveSlide() {slides.forEach((slide) => slide.classList.remove('active'))slides[activeSlide].classList.add('active')
}

写在最后

以上就是我们今天的【每日一练】的全部内容,希望今天的小练习对你有用,如果你觉得有帮助的话,请点赞我,关注我,并将它分享给你身边的朋友,也许能够帮助到他。

最后,感谢你的支持,我是杨小爱,我们明天见。

学习更多技能

请点击下方公众号

【每日一练】39—七夕节背景轮播图效果的实现相关推荐

  1. (39)css3实现轮播图效果

    css3的轮播图和js的轮播图的区别? css3:没有一些js的逻辑,优点,过渡动画比较漂亮,缺点:兼容问题.无法实现自动轮播和点击轮播一起同时出现的效果. js轮播图:js逻辑很多,可以做的很复杂, ...

  2. 用JavaScript实现网页无限轮播图效果,附整套源码

    用JavaScript实现无限轮播图效果(附源码) javascript群内每日课题-今日课题:用JavaScript实现无限轮播图效果 PS:很多企业通用的案例自己再学习过程中肯定是要熟练的,所以今 ...

  3. 原生JS实现 ‘Tab栏切换’,‘手风琴’,‘轮播图’效果

    1.小天使跟随鼠标效果 <!DOCTYPE html> <html lang="en"><head><meta charset=" ...

  4. css33d图片轮播_手把手教你用纯css3实现轮播图效果

    首先先看demo吧,点击查看demo 一.随便说几句 css3动画效果的强大不言而喻,自它出现一直热度不减,它与js动画的优劣也一直成为前端界争论的话题,不可置疑的是css3动画的出现在一定程度上降低 ...

  5. css33d图片轮播_手把手教你用纯css3实现轮播图效果实例

    首先先看demo吧,点击查看demo 一.随便说几句 css3动画效果的强大不言而喻,自它出现一直热度不减,它与js动画的优劣也一直成为前端界争论的话题,不可置疑的是css3动画的出现在一定程度上降低 ...

  6. html轮播台袋效果,css3百叶窗轮播图效果

    标题 #Con{width:900px; /*宽度*/ height:500px;/*高度*/ background:#9933FF;/*背景颜色*/ position:relative;} #con ...

  7. html 图片轮播实例,简单实现轮播图效果的实例

    一.要点: 1.页面加载时,图片重合,叠在一起[绝对定位]; 2.第一张显示,其它隐藏; 3.设置下标,给下标设置颜色让它随图片移动; 4.鼠标移动到图片上去,显示左右移动图标,鼠标移走,继续轮播; ...

  8. 用jQuery实现轮播图效果(自动播放,能手动切换)

    大家好,今天我和大家分享一下轮播图的实现,下面是我做的轮播图效果 首先我们看到,它是由背景图片.方向图标和指示器组成.**我们发现背景图片.方向图标和指示器是层叠在一起的,所以布局时我们要用绝对定位. ...

  9. php自动轮播图代码,JavaScript如何实现动态轮播图效果?(代码示例)

    本篇文章给大家带来的内容是JavaScript如何实现动态轮播图效果?(代码示例).有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助. 功能描述: 1.鼠标经过 左右侧箭头显示,鼠标离开 ...

最新文章

  1. Python join()方法
  2. cannot assign module before Module.__init__() call
  3. 如何理解clone对象
  4. Opendaylight将自己写的feature添加到控制器当中
  5. Deep Belief Networks
  6. java随机安排座位表程序_java – 为长凳生成随机座位表的最有效算法?
  7. php target标签,为Typecho文章页url标签添加nofollow和target属性
  8. 求解斐波那契第n项的几种解法(含矩阵乘法+快速幂) Python实现
  9. 日积月累:ScrollView嵌套ListView只显示一行
  10. 零配置构建工具:parcel
  11. 创建一个1000w个随机浮点数的数组
  12. PHP调用powershell权限,浏览器挂起执行运行Powershell的PHP
  13. 11月29日至12月12日总结
  14. 8款能让打工人效率原地飞起的神仙软件,含泪公开
  15. 【整理分享】2019年▪尔雅通识课▪《移动互联网时代的信息安全与防护》▪期末考试答案
  16. scandir 参数
  17. Day 41 Mysql高级操作
  18. HTTP content-type
  19. linux7 设置隐藏账号,科学网-CentOS 7 在登录界面用户列表中隐藏指定账号-乔磊的博文...
  20. Ubuntu解决风扇高速导致声音大的问题

热门文章

  1. 安卓逆向高阶之frida hook java层
  2. python获取汉字拼音查询翻译器_Python 返回汉字的汉语拼音
  3. 【Unity】Failed to open source file UnityCG.cginc
  4. java 文件上传格式,javaweb中的文件上传(以2进制格式上传)
  5. bullmind在线uml软件,在线流程图软件
  6. 大学计算机基础第3套,大学计算机基础(Windows7+Office2010)(第3版)
  7. 实验3 路由器的基本配置和远程登录
  8. 银行系统IT架构设计和架构管控说明
  9. 微信小程序-云函数连接MySQL数据库
  10. pandas合并列-直方图-读取word文件-merge-读取nan行