摘要:最后丟一個單個圖片放大展示的效果,有性趣的同學可以自行研究原理,也很簡單的
之前發了兩篇關于CSS的文章,大家都比較關注,看來大家對這塊東西都是很感興趣的,現在趁熱打鐵再來一發~~
簡介一個用純CSS實現的簡單幻燈片效果,僅供實驗,要看Demo請自備Chrome瀏覽器,勿用于生產環境,不然后果自付,咩哈哈哈哈哈~~
效果圖Demo地址:http://output.jsbin.com/tewuso
技術點效果圖錄出來很爛,不上傳了,請看Demo :(
:target偽類
object-fit屬性
原理說明:target偽類可以指定當前錨點目標元素的樣式,比如下面:
查看圖片
#image-1{ display: none; } #image-1:target{ display: block; }
點一下"顯示圖片",原本隱藏起來的#image-1就會突然冒出來,是不是很神奇?(噗→_→)
CSS中的object-fit屬性在本Demo里面只是輔助作用,其作用是指定object類元素(img、video等)中的實際內容在元素中的填充方式,跟background-size: contain/cover有點點類似。
更具體的介紹請看張鑫旭的文章:半深入理解CSS3 object-position/object-fit屬性
既然知道有:target這么個神奇的東西在,那我們完全可以用CSS實現“點一個小圖顯示一個大圖”的效果,再把HTML寫得溜~一點,實現上下圖連續查看也是可以的。
代碼先上HTML部分,可以看到其實這種方式實現的幻燈片效果并不太靈活,每一個上下圖按鈕都要寫出來,當然用程序生成此類代碼也是很方便的~
JS Bin
CSS代碼,很大部分都是用于定位啊布局什么的,另外還有相當一部分用于過渡動畫效果,貌似有點影響性能~
html,body{ height: 100%; margin: 0; padding: 0; overflow: hidden; background-color: #f0f0f0; } .gallery-wrapper{ display: block; list-style: none; width: 800px; height: 400px; margin: 60px auto 0 auto; padding: 10px; background-color: #fff; } .gallery-wrapper li{ display: block; float: left; list-style: none; width: 180px; height: 180px; padding: 10px; } .gallery-wrapper a{ display: block; width: 180px; height: 180px; overflow: hidden; } .gallery-wrapper img{ display: block; width: 180px; height: 180px; object-fit: cover; background-color: #eee; transition: .5s; } .gallery-wrapper a:hover img{ transform: scale(1.1); } .hidden-images-wrapper > div{ position: fixed; top: 0; right: 0; bottom: 0; left: 0; background-color: rgba(0,0,0,.8); opacity: 0; transition: .6s; pointer-events: none; } .hidden-images-wrapper > div:target{ opacity: 1; pointer-events: auto; } .hidden-images-wrapper img{ display: block; position: absolute; z-index: 3; top: 0; right: 0; bottom: 0; left: 0; width: 740px; height: 500px; max-width: 90%; max-height: 90%; margin: auto; padding: 30px; background-color: #fff; border-radius: 5px; object-fit: contain; transition: .7s; transform: translateY(-30px); } .hidden-images-wrapper div:target img{ transform: translateY(0); } .img-prev, .img-next{ display: block; position: absolute; z-index: 4; top: 0; bottom: 0; height: 50px; margin: auto 0; padding: 0 20px; color: #333; font-size: 16px; line-height: 50px; text-decoration: none; background-color: #fff; } .img-prev:hover, .img-next:hover{ background-color: #eee; } .img-prev{ left: 0; border-radius: 0 5px 5px 0; } .img-next{ right: 0; border-radius: 5px 0 0 5px; } .img-close{ position: absolute; z-index: 2; top: 0; right: 0; bottom: 0; left: 0; cursor: default; }
就這些。。。
最后丟一個單個圖片放大展示的效果:http://output.jsbin.com/goyeju/2,有性趣的同學可以自行研究原理,也很簡單的
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://m.specialneedsforspecialkids.com/yun/111094.html
摘要:最后丟一個單個圖片放大展示的效果,有性趣的同學可以自行研究原理,也很簡單的 之前發了兩篇關于CSS的文章,大家都比較關注,看來大家對這塊東西都是很感興趣的,現在趁熱打鐵再來一發~~ 簡介 一個用純CSS實現的簡單幻燈片效果,僅供實驗,要看Demo請自備Chrome瀏覽器,勿用于生產環境,不然后果自付,咩哈哈哈哈哈~~ Demo地址:http://output.jsb...
摘要:渲染和事件處理通過這個數結構傳遞。對應的數據適配器分別是。用圖形表示如下數據模型和數據流分析數據適配器是數據到的橋梁,連接數據源和。由管理,等在初始化的時候會通過獲取一個,這個就是的數據的最終來源,即數據適配器的數據來源。 概述 ??圖庫和相機在內部實現上其實是共用的一個app,即Gallery2。它們是Gallery2的兩個不同的入口。圖庫的主要功能是展示和管理設備中的或者網絡上的媒...
閱讀 1831·2021-10-09 09:44
閱讀 2704·2021-09-22 15:38
閱讀 2501·2021-09-09 09:33
閱讀 708·2021-09-07 09:58
閱讀 1831·2021-09-02 15:41
閱讀 2521·2019-08-30 15:55
閱讀 1805·2019-08-30 15:55
閱讀 550·2019-08-30 15:44