摘要:最后丟一個單個圖片放大展示的效果,有性趣的同學(xué)可以自行研究原理,也很簡單的
之前發(fā)了兩篇關(guān)于CSS的文章,大家都比較關(guān)注,看來大家對這塊東西都是很感興趣的,現(xiàn)在趁熱打鐵再來一發(fā)~~
簡介</>復(fù)制代碼
一個用純CSS實現(xiàn)的簡單幻燈片效果,僅供實驗,要看Demo請自備Chrome瀏覽器,勿用于生產(chǎn)環(huán)境,不然后果自付,咩哈哈哈哈哈~~
</>復(fù)制代碼
Demo地址:http://output.jsbin.com/tewuso
效果圖
技術(shù)點</>復(fù)制代碼
效果圖錄出來很爛,不上傳了,請看Demo :(
:target偽類
object-fit屬性
原理說明:target偽類可以指定當(dāng)前錨點目標(biāo)元素的樣式,比如下面:
</>復(fù)制代碼
</>復(fù)制代碼
#image-1{
display: none;
}
#image-1:target{
display: block;
}
點一下"顯示圖片",原本隱藏起來的#image-1就會突然冒出來,是不是很神奇?(噗→_→)
CSS中的object-fit屬性在本Demo里面只是輔助作用,其作用是指定object類元素(img、video等)中的實際內(nèi)容在元素中的填充方式,跟background-size: contain/cover有點點類似。
更具體的介紹請看張鑫旭的文章:半深入理解CSS3 object-position/object-fit屬性
既然知道有:target這么個神奇的東西在,那我們完全可以用CSS實現(xiàn)“點一個小圖顯示一個大圖”的效果,再把HTML寫得溜~一點,實現(xiàn)上下圖連續(xù)查看也是可以的。
代碼先上HTML部分,可以看到其實這種方式實現(xiàn)的幻燈片效果并不太靈活,每一個上下圖按鈕都要寫出來,當(dāng)然用程序生成此類代碼也是很方便的~
</>復(fù)制代碼
CSS代碼,很大部分都是用于定位啊布局什么的,另外還有相當(dāng)一部分用于過渡動畫效果,貌似有點影響性能~
</>復(fù)制代碼
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,有性趣的同學(xué)可以自行研究原理,也很簡單的
文章版權(quán)歸作者所有,未經(jīng)允許請勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。
轉(zhuǎn)載請注明本文地址:http://specialneedsforspecialkids.com/yun/49594.html
摘要:最后丟一個單個圖片放大展示的效果,有性趣的同學(xué)可以自行研究原理,也很簡單的 之前發(fā)了兩篇關(guān)于CSS的文章,大家都比較關(guān)注,看來大家對這塊東西都是很感興趣的,現(xiàn)在趁熱打鐵再來一發(fā)~~ 簡介 一個用純CSS實現(xiàn)的簡單幻燈片效果,僅供實驗,要看Demo請自備Chrome瀏覽器,勿用于生產(chǎn)環(huán)境,不然后果自付,咩哈哈哈哈哈~~ Demo地址:http://output.jsb...
摘要:渲染和事件處理通過這個數(shù)結(jié)構(gòu)傳遞。對應(yīng)的數(shù)據(jù)適配器分別是。用圖形表示如下數(shù)據(jù)模型和數(shù)據(jù)流分析數(shù)據(jù)適配器是數(shù)據(jù)到的橋梁,連接數(shù)據(jù)源和。由管理,等在初始化的時候會通過獲取一個,這個就是的數(shù)據(jù)的最終來源,即數(shù)據(jù)適配器的數(shù)據(jù)來源。 概述 ??圖庫和相機(jī)在內(nèi)部實現(xiàn)上其實是共用的一個app,即Gallery2。它們是Gallery2的兩個不同的入口。圖庫的主要功能是展示和管理設(shè)備中的或者網(wǎng)絡(luò)上的媒...
閱讀 3238·2021-09-07 10:10
閱讀 3583·2019-08-30 15:44
閱讀 2583·2019-08-30 15:44
閱讀 3003·2019-08-29 15:11
閱讀 2226·2019-08-28 18:26
閱讀 2749·2019-08-26 12:21
閱讀 1116·2019-08-23 16:12
閱讀 3032·2019-08-23 14:57