CSS 实现 图片鼠标悬停折叠效果
建站知识 2021-07-03 07:55www.168986.cn长沙网站建设
CSS 实现 图片鼠标悬停折叠效果
1. 实现要点
- 折叠是由多个块级元素来完成的;
- 图片是以背景图片的方式呈现出来的;
- 给每个块级元素设置同一张背景图片,通过background-position来控制显示的区域(类似于雪碧图);
- 通过ransform属性来实现折叠效果;
- 整个包裹div的大小就是图片的原大小,如果更改了尺寸,需要调整background-size等属性调整背景图片大小
2. 效果展示
3. 源码
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <title>hover-folder</title> <style> html, body, ul, li { margin: 0; padding: 0 } ul { list-style: none; display: block; } body { width: 100%; height: 100vh; } .container { width: 100%; height: 100%; / background-color: aqua; / display: flex; justify-content: center; align-items: center; transform: scale(0.5); } .wrap { box-shadow: 0 2px 12px 0 rgba(0, 0, 0, .5); width: 1280px; height: 854px; font-size: 0; line-height: 0; position: relative; } .image { cursor: pointer; } .abs-wrap { height: 100%; width: 100%; / : 0; left: 0; / / position: absolute; / z-index: 10; } .abs-wrap:hover>.abs:nth-child(2) { transform: matrix(0.8, -0.2, 0, 1, -1, 0); } .abs-wrap:hover>.abs:nth-child(3) { transform: matrix(0.8, 0.2, 0, 1, -53, -50); } .abs-wrap:hover>.abs:nth-child(4) { transform: matrix(0.8, -0.2, 0, 1, -105, 0); } .abs-wrap:hover>.abs:nth-child(5) { transform: matrix(0.8, 0.2, 0, 1, -157, -50); } .abs { transform-style: preserve-3d; transform-origin: left center; transition: .4s ease-in-out; width: 20%; height: 100%; / background-color: rgba(0, 0, 0, .5); / display: inline-block; background-size: 100%; background: url('https://timgsa.baidu./timg?image&quality=80&size=b9999_10000&sec=1600577868615&di=d2979a54604ecb409e3329527d0220fa&imgtype=0&src=http%3A%2F%2Ft9.baidu.%2Fit%2Fu%3D29311073%2C358824429%26fm%3D79%26app%3D86%26f%3DJPEG%3Fw%3D1280%26h%3D854'); } .abs:nth-child(1) { background-position: 0% 0%; } .abs:nth-child(2) { background-position: 25% 0%; } .abs:nth-child(3) { background-position: 50% 0%; } .abs:nth-child(4) { background-position: 75% 0%; } .abs:nth-child(5) { background-position: 100% 0%; } </style> </head> <body> <div class="container"> <div class="wrap"> <ul class="abs-wrap"> <li class="abs"></li> <li class="abs"></li> <li class="abs"></li> <li class="abs"></li> <li class="abs"></li> </ul> </div> </div> </body> </html>
到此这篇关于CSS 实现 图片鼠标悬停折叠效果的文章就介绍到这了,更多相关css图片鼠标悬停折叠内容请搜索狼蚁SEO以前的文章或继续浏览狼蚁网站SEO优化的相关文章,希望大家以后多多支持狼蚁SEO!
上一篇:详解CSS3弹性伸缩盒
下一篇:CSS3 实现雷达扫描图的示例代码
长沙网站设计
- 如何进行东阳SEO关键词优化?
- 边坝哪有关键词排名优化:提升你的网站流量与
- 安国百度优化服务:提升您的在线可见性
- 阜康新手做SEO怎么做
- 山西seo网站排名关键词优化:提升您网站曝光率
- 临沂seo网站排名关键词优化:提高你的网站可见
- 广西SEO网站推广怎样付费比较合理
- 双辽SEO网站推广:提升你的网站可见性与流量
- 辽宁企业网站优化购买方式有哪些
- 提升宝清百度SEO排名的实用技巧与策略
- 静宁百度SEO排名:提升您网站曝光率的关键策略
- 彭州百度SEO排名的提升策略和实施指南
- 广南百度关键词SEO:提升网站排名的关键策略
- 辽宁关键词优化怎么做论坛营销
- 吉林百度seo排名如何做到让用户满意
- 内黄百度优化服务:提升在线可见性的关键