您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關CSS如何實現圖片鼠標懸停折疊效果的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
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%; /* top: 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.com/timg?image&quality=80&size=b9999_10000&sec=1600577868615&di=d2979a54604ecb409e3329527d0220fa&imgtype=0&src=http%3A%2F%2Ft9.baidu.com%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如何實現圖片鼠標懸停折疊效果”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。