婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av

主頁 > 知識庫 > 純CSS實現頁面中的列表收拉效果

純CSS實現頁面中的列表收拉效果

熱門標簽:旅游地圖標注線路 漯河外呼調研線路 電銷專用外呼線路 廣西房產智能外呼系統推薦 威力最大的電銷機器人 電銷外呼系統是違法的嗎 400電話唐山辦理 地圖標注位置怎么弄圖 電話機器人鑰匙扣

你可能經常見到下面這樣的效果:

沒錯,就是頁面上常用的“展開收起”交互形式,通常的做法就是控制display屬性值在none和其他值之間切換,但是雖說功能可以實現,效果卻非常生硬,所以就會有這樣的一個需求 —— 希望元素在展開收起時能夠有明顯的高度滑動效果。

以前的實現可以用jQuery的slideUp()/slideDown()方法,但是,在移動端,因為CSS3動畫支持良好,所以移動端的JavaScript框架都是沒有提供動畫模塊的。這里自然而然就想到了CSS3技術。


筆者的第一反應就是用height+overflow:hidden;實現,既沒有性能問題,也不必擔心顯示問題。但是轉眼間就想到:很多時候我們需要展現的內容都是動態的,也就是說內容高度是不固定的(當然,你也可以用overflow-y:auto; 暫且不論)。而要達到這種效果,height就要使用“非固定值auto”!

但是auto并不是數值,而是一個關鍵字,所以在一個隱性規定 —— 數值和關鍵字之間無法計算 下,如果我們使用height0pxauto之間切換,是無法形成過渡或動畫效果的。

同樣的還有css中的clip-path屬性:很多初學者習慣于在none和具體值之間形成動畫效果,這是不可能的。

因此,想要達到文首的效果,筆者推薦max-height屬性:

<div class="accordion">
	<input id="collapse1" type="radio" name="tap-input" hidden />
	<input id="collapse2" type="radio" name="tap-input" hidden />
	<input id="collapse3" type="radio" name="tap-input" hidden />
	<article>
		<label for="collapse1">列表1</label>
		<p>內容1<br>內容2<br>內容3<br>內容4</p>
	</article>
	<article>
		<label for="collapse2">列表2</label>
		<p>內容1<br>內容2<br>內容3<br>內容4</p>
	</article>
	<article>
		<label for="collapse3">列表3</label>
		<p>內容1<br>內容2<br>內容3<br>內容4</p>
	</article>
</div>
.accordion {
	width: 300px;
}
.accordion article {
	cursor: pointer;
}
label {
	display: block;
	padding: 0 20px;
	height: 40px;
	background-color: #f66;
	cursor: pointer;
	line-height: 40px;
	font-size: 16px;
	color: #fff;
}
p {
	overflow: hidden;
	padding: 0 20px;
	margin: 0;
	border: 1px solid #f66;
	border-top: none;
	border-bottom-width: 0;
	max-height: 0;
	line-height: 30px;
	transition: all .5s ease;
}
input:nth-child(1):checked ~ article:nth-of-type(1) p,
input:nth-child(2):checked ~ article:nth-of-type(2) p,
input:nth-child(3):checked ~ article:nth-of-type(3) p {
	border-bottom-width: 1px;
	max-height: 130px;
}

在css中,min-height/max-height出現的場景一定是自適應布局或者流體布局中。而對于展開后的max-height值,我們只需要保證設定值比內容高度大即可 —— 因為在max-height > height 時,元素高度就會以height屬性的高度計算

但是建議不要把max-height值設置的太大,畢竟transition或animation的時間是“完成動畫的時間”而不是“內容展示出來的時間”


收拉效果還有一種展現形式:

其特點是鼠標懸浮到組件的某個部分,該部分就會擴張開來并擠壓旁邊的部分,當鼠標離開時就恢復原狀。若鼠標快速在其上面略過,就會產生手風琴彈琴的效果。

使用JS實現手風琴效果,必須監聽mouseentermouseleave兩個鼠標事件,而CSS中的:hover可代替兩者的效果。所以純CSS實現手風琴效果的關鍵就是:hover ,其核心代碼如下:

li {
}
li:hover {
}

而對布局來說,這種以相同/不同寬度排列在一排的元素想要實現在一行內的展開收縮效果,比較好的方式就是 flex

<ul class="accordion">
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
    <li></li>
</ul>
.accordion {
	display: flex;
	width: 600px;
	height: 200px;
}
li {
	flex: 1;
	cursor: pointer;
	transition: all 300ms;
}
li:nth-child(1) {
	background-color: #f66;
}
li:nth-child(2) {
	background-color: #66f;
}
li:nth-child(3) {
	background-color: #f90;
}
li:nth-child(4) {
	background-color: #09f;
}
li:nth-child(5) {
	background-color: #9c3;
}
li:nth-child(6) {
	background-color: #3c9;
}
li:hover {
	flex: 2;
	background-color: #ccc;
}

這里有一點值得注意:像有些“特殊”情況比如 animation 的延遲,可以以 內聯style 的方式在HTML中插入 CSS自定義變量 ,可以簡潔代碼:從一次項目重構說起CSS3自定義變量在項目中是如何使用的?

到此這篇關于純CSS實現頁面中的列表收拉效果的文章就介紹到這了,更多相關css頁面列表收拉內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章,希望大家以后多多支持腳本之家!

標簽:欽州 無錫 試駕邀約 湘西 銅陵 湖北 綏化 焦作

巨人網絡通訊聲明:本文標題《純CSS實現頁面中的列表收拉效果》,本文關鍵詞  純,CSS,實現,頁面,中的,列表,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《純CSS實現頁面中的列表收拉效果》相關的同類信息!
  • 本頁收集關于純CSS實現頁面中的列表收拉效果的相關信息資訊供網民參考!
  • 推薦文章
    婷婷综合国产,91蜜桃婷婷狠狠久久综合9色 ,九九九九九精品,国产综合av
    www.日韩大片| 91热门视频在线观看| 精品久久久久久久久久久久久久久久久 | 国产亚洲女人久久久久毛片| 91精品国产91热久久久做人人| 欧美性色黄大片| 成人99免费视频| 国产综合色视频| 久久99精品久久久| 国产一区不卡在线| 欧美色电影在线| 亚洲综合久久久久| 91精品在线麻豆| 国产午夜久久久久| 亚洲品质自拍视频| 美腿丝袜一区二区三区| 国产精品美女久久久久aⅴ| 蜜臀精品久久久久久蜜臀 | 粉嫩高潮美女一区二区三区| 色综合久久久久久久久| 91在线观看美女| 精品av综合导航| 亚洲一卡二卡三卡四卡无卡久久| 麻豆一区二区在线| 成人美女在线观看| 精品精品欲导航| 亚洲资源在线观看| 男男成人高潮片免费网站| 99视频精品免费视频| 69久久夜色精品国产69蝌蚪网| 日韩你懂的在线播放| 亚洲在线视频网站| 成人久久18免费网站麻豆| 欧美变态tickle挠乳网站| 国产午夜精品久久久久久免费视| 国产午夜精品一区二区三区视频| 蜜桃在线一区二区三区| 99久久国产免费看| 国产精品午夜电影| 国产大片一区二区| 91精品中文字幕一区二区三区| 国产精品色婷婷| 激情综合色丁香一区二区| 大陆成人av片| 精品国产乱码久久久久久图片 | 亚洲va中文字幕| 国产91精品免费| 久久只精品国产| 国产精品资源站在线| 日韩欧美在线网站| 一区二区高清免费观看影视大全| 久久激情五月激情| 92精品国产成人观看免费 | 丁香天五香天堂综合| 成人av电影在线观看| 欧美日韩精品一区二区三区| 国产欧美日韩另类视频免费观看| 国产精品1024久久| 2023国产精品自拍| 国产福利精品一区二区| 国产欧美一区二区精品仙草咪| 激情综合色综合久久综合| 精品国精品国产尤物美女| 亚洲国产成人av网| gogogo免费视频观看亚洲一| 综合亚洲深深色噜噜狠狠网站| 不卡在线视频中文字幕| 亚洲精品高清在线观看| 欧美自拍丝袜亚洲| 日韩精品每日更新| 91精品国产色综合久久ai换脸| 久久久精品免费观看| 国产成人综合视频| 一区二区三区在线播| 欧美一区二区三区人| 国产一区二区三区精品视频| 91精品欧美综合在线观看最新| 精品一区二区三区免费播放| 国产欧美日韩另类视频免费观看| 99久久免费视频.com| 精品视频在线视频| 紧缚奴在线一区二区三区| 99久久精品费精品国产一区二区| 午夜精品视频在线观看| 欧美午夜影院一区| 亚洲午夜久久久久久久久久久| 欧美日韩中文另类| 风间由美性色一区二区三区| 国产日产亚洲精品系列| 99久久综合国产精品| 亚洲色图一区二区| 精品日韩av一区二区| 国产麻豆成人精品| 亚洲国产精品久久久久秋霞影院| 欧美一级夜夜爽| 国产精品乡下勾搭老头1| 久久夜色精品国产欧美乱极品| 成人午夜在线播放| 石原莉奈在线亚洲二区| 精品久久久久久无| 欧美日韩你懂得| 国产精品一区二区久久精品爱涩| 日韩午夜三级在线| 国产精品影视网| 欧美老人xxxx18| 成人免费视频视频| 亚洲欧美成aⅴ人在线观看| 欧美巨大另类极品videosbest | 精品久久国产字幕高潮| 91色综合久久久久婷婷| 天堂va蜜桃一区二区三区 | 国产一区二区三区综合| 成人国产精品免费观看| 天天色图综合网| 亚洲人成伊人成综合网小说| 欧美a级一区二区| 国产农村妇女毛片精品久久麻豆 | 国产精品99久久久| 日韩精彩视频在线观看| 亚洲精品欧美专区| 国产精品网曝门| 国产日韩影视精品| 日韩一级免费一区| 欧美四级电影在线观看| 99久久久久久| 麻豆精品国产传媒mv男同| 中文字幕永久在线不卡| 日韩精品中文字幕在线不卡尤物| 色哟哟一区二区在线观看| 国产精华液一区二区三区| 久久99精品视频| 日韩av电影天堂| 日韩中文欧美在线| 青椒成人免费视频| 亚洲激情欧美激情| 精品国产91洋老外米糕| 欧美一区二区国产| 欧美亚男人的天堂| 成人综合在线观看| 国产福利视频一区二区三区| 久久se精品一区精品二区| 蜜臀av性久久久久av蜜臀妖精| 午夜视频一区二区| 奇米色一区二区| 亚洲一区二区3| 亚洲乱码中文字幕| 国产日产欧产精品推荐色 | 精品国产乱码久久久久久1区2区 | 美女视频黄 久久| 日本不卡一二三区黄网| 精品嫩草影院久久| 久久免费精品国产久精品久久久久| 日韩一区二区免费电影| 欧美精品一级二级三级| 欧美高清一级片在线| 欧美精品日韩一本| 欧美成人精品二区三区99精品| 久久一区二区三区四区| 国产精品免费免费| 一区二区欧美精品| 蜜桃视频一区二区三区| 国产成a人亚洲精| 成人福利视频在线| 欧美视频在线观看一区二区| 欧美日韩免费在线视频| 精品国产91亚洲一区二区三区婷婷| 久久综合九色欧美综合狠狠 | 国产欧美综合在线观看第十页| 欧美激情资源网| 亚洲一级在线观看| 精品一区免费av| 欧美韩日一区二区三区四区| 亚洲人成网站色在线观看| 亚洲成人av一区| 国产成人精品亚洲777人妖| 91香蕉视频mp4| 日本高清不卡在线观看| 欧美一级在线视频| 亚洲三级在线观看| 亚洲国产日韩在线一区模特| 秋霞影院一区二区| 亚洲妇熟xx妇色黄| 国产精品888| 欧美日本高清视频在线观看| 欧美喷潮久久久xxxxx| 欧美日韩精品福利| 日韩精品一区二区在线观看| 26uuu精品一区二区三区四区在线 26uuu精品一区二区在线观看 | 香蕉加勒比综合久久| 免费人成在线不卡| caoporen国产精品视频| 欧美日本高清视频在线观看| 久久精品人人做人人综合| 亚洲大尺度视频在线观看| 国产一区二区精品久久91| 欧美日韩一区二区三区四区| 国产精品福利一区二区三区| 久久黄色级2电影| 91论坛在线播放| 精品国产欧美一区二区|