您现在的位置是:网站首页> 编程资料编程资料
纯CSS实现图片百叶窗展示效果示例非常漂亮的CSS3百叶窗焦点图动画
2021-09-03
974人已围观
简介 这篇文章主要介绍了纯CSS实现图片百叶窗展示效果,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
首先给大家看一下完成效果

主要思路:其实这个百叶窗还是利用了一种障眼法,我们看上去是鼠标移动上去之后,图片展开了,其实这些图片在原地根本没有动,只不过是我们把这些图片放在了一个列表里,相互叠加,鼠标移动的同时改变列表的宽度。
第一步:构建一个百叶窗框架
html代码:
css代码:
*{ margin: 0; padding: 0; } .container{ margin: 100px auto; border: 2px solid #568bc7; width: 800px; height: 300px; } .container ul{ display: flex; } .container li{ width: 160px; height: 300px; list-style: none; border-left: 1px solid #194b8d; } .container li img{ display: block; width: 800px; height: 300px; } 需要注意一下:这里的li可能需要手动计算等分的宽度,虽然可以用弹性盒子实现自动等分,但是我后面加了hover之后发现会有BUG,大家可以试试,这里就不使用弹性盒子了
现在得到如下框架:

第二步:插入图片,使用hover做出特效
我这里插入了五张油画
这里我们可以发现图片超过了我们容器的范围

此时我们在外容器中添加,做一个溢出隐藏
overflow: hidden;

这样一个百叶窗就出具规模了
如何让图片和演示GIF一样动起来呢?
这里涉及到一段核心代码
.container ul:hover li{ width: 40px; } .container ul li:hover{ width: 600px; } 这个Demo 其实是对:hover属性灵活运用的一个练习,
首先要注意,两行代码的顺序不可以更换
首先鼠标移入 ul 的大容器内时,我们首先要让 li 的宽度变小,紧接着触发下一行的hover ,移入到每一个 li 的时候,让 li 的宽度变大
第三步:细节处理
完成以上之后,我们看到整个过程非常的生硬
这里可以加入过渡属性,让变化变得更加平滑 ,同时给每一个 li 的左边框加上一点阴影效果,让他看起来更加的立体
box-shadow: 0 0 25px #000; transition: all 0.5s;
最后就完成啦

这里是完整代码:
Document
到此这篇关于纯CSS实现图片百叶窗展示效果的文章就介绍到这了,更多相关CSS 图片百叶窗内容请搜索以前的文章或继续浏览下面的相关文章,希望大家以后多多支持!
相关内容
- 详解中文字体在CSS样式中font-family对应的英文名称
- 深入浅析CSS 的多种背景及使用场景和技巧CSS Transition通过改变Height实现展开收起元素从QQtabBar看css命名规范BEM的详细介绍css实现两栏布局,左侧固定宽,右侧自适应的多种方法CSS 实现Chrome标签栏的技巧CSS实现两列布局的N种方法CSS实现隐藏搜索框功能(动画正反向序列)CSS3中Animation实现简单的手指点击动画的示例详解CSS中的特指度和层叠问题详解overflow:hidden的作用(溢出隐藏、清除浮动、解决外边距塌陷)关于CSS浮动与取消浮动的问题
- 解决line-height=height元素高度但是文字并没有垂直居中的问题深入理解CSS行高line-height与文本垂直居中的原理CSS line-height行高上下居中垂直居中样式属性line-height使文本居中的3像素bug问题-CSS教程-网页制作-网页教学网详解HTML中字体使用line-height依然不能垂直居中解决办法
- CSS实现鼠标悬停改变其他标签样式的示例代码HTML外部样式表如何引入CSS样式详解CSS3中常用的样式【基本文本和字体样式】编程式处理Css样式的示例代码CSS 选择所有子元素添加样式的方法CSS常用样式之绘制双箭头的示例代码详解中文字体在CSS样式中font-family对应的英文名称解决ElementUI自定义CSS样式不生效的问题
- 浅谈CSS到底会不会阻塞页面渲染css加载会造成阻塞吗详解css加载会造成阻塞吗浅谈css动画是否会被js阻塞
- CSS中使用text-align、margin:0 auto居中的示例代码在ie7下css居中样式text-align:center;偏左问题解决方法实例方式学CSS text-align怎么用css中margin:0 auto居中问题深入探讨css margin:0 auto居中
- 使用css的filter写鼠标滑过效果的实现示例css3 filter属性的使用简介CSS3 filter(滤镜)实现网页灰色或者黑色模式的示例代码CSS3 filter(滤镜)实现网页灰色或者黑色模式的代码css中filter属性和backdrop-filter的应用与区别详解详解CSS3 filter:drop-shadow滤镜与box-shadow区别与应用CSS filter 有什么神奇用途
- css动画效果之animation的常用样式css常用样式font设置字体的多种变换(实例详解)浅谈html5标签css3的常用样式css 常用样式(分享)20个CSS/CSS3常用样式汇总CSS常用样式简单的总结包括定位、显示等属性CSS常用样式之绘制双箭头的示例代码
- 使用CSS3实现字体颜色渐变的实现一款纯css3实现的颜色渐变按钮的代码教程
- CSS心形加载的动画源码的实现CSS动态条形加载条效果的示例代码实现点击按钮后CSS加载效果的实现CSS3实现王者荣耀匹配人员加载页面的方法css加载会造成阻塞吗纯 CSS 撸一个漂亮的加载css制作超萌吃豆豆加载动画效果纯css写出爱心版加载效果的示例代码CSS 的加载及加载顺序简介详解css加载会造成阻塞吗使用 css3 实现圆形进度条的示例





