亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > CSS > 正文

如何只使用CSS創建折疊標題效果的示例代碼

2024-07-11 09:00:08
字體:
來源:轉載
供稿:網友

折疊標題是向用戶顯示重要信息的絕佳解決方案,例如特價優惠和密鑰通知。許多開發人員在創建此類效果時依賴JavaScript,但是,使用純CSS創建更簡單的折疊頭效果也是完全可能的。

折疊標題的工作方式類似于視差效果。折疊標題的背景保持固定,以便當用戶向下滾動頁面時,其下方的內容可以在其上方流動。在本教程中,我們將向你展示如何創建以下折疊標題效果:

該演示包括三個部分:

  1. 帶有黑色背景的固定標題,位于頁面頂部,包含主菜單。
  2. 帶藍色背景的折疊標題,包含有關特價的額外信息。
  3. 用戶滾動到折疊標題的白色背景的其余內容。

折疊標頭非常適合用戶體驗。用戶可以在想要查看特殊信息時隨時滾動頁面,但在閱讀其余內容時不會分散他們的注意力。

現在,讓我們看看如何逐步創建折疊標題。

1.創建HTML

HTML包括三個主要部分:

用于固定頂部菜單欄中,.banner為折疊頭,.article用于內容的其余部分。以下是代碼的外觀:

 <div class="container">         <header>            <nav>                <ul class="menu">                    <li class="logo"><a href="#">Dev & Design</a></li>                    <li><a href="#">Home</a></li>                    <li><a href="#">Blog</a></li>                    <li><a href="#">About</a></li>                    <li><a href="#">Contact</a></li>                </ul>            </nav>        </header>        <div class="banner">            <div>                <h2 class="banner-title">Don't Miss Out On Our Next Webinar</h2>                <p class="banner-desc">Sign Up Now and Choose an Ebook for Free</p>            </div>            <button class="btn-signup" type="button" onclick="location.href='#'">                   Go to Webinars »            </button>        </div>        <article class="article">            <p>...</p>        </article>    </div>

2.使用CSS添加基本樣式

讓我們通過定義一些重置和基本樣式來啟動CSS,例如:

* {	box-sizing: border-box;	margin: 0;	padding: 0;	font-family: sans-serif;	color: #222;}a {	text-decoration: none;}ul {	list-style-type: none;}

3.放置頂部菜單欄

要將固定菜單欄定位在頁面頂部,你需要將

元素的位置設置為fixed,將z-index設置為大于零的值。由于z-index默認為auto,因此它只需要高于元素父級的z-index值。下面的CSS使用99,因為它可能會保持高于

元素的任何父級:

header {	height: 70px;	background: #222;	position: fixed;	width: 100%;	z-index: 99;}

z-index: 99; 規則允許頂部菜單欄保持在所有元素的頂部,即使折疊標題完全折疊并且其余內容到達頁面頂部。

4.設置菜單樣式

雖然創建折疊標題不需要以下CSS規則,但你可以使用頂部菜單設置樣式:

nav {	height: inherit;}.menu {	display: flex;	height: inherit;	align-items: center;	padding: 0 20px;}.menu li {	padding: 0 10px;}.menu a {	color: white;}.logo {	flex: 1;	font-size: 22px;}

.nav和menu項繼承

(100%)的寬度,以便它們也可在整個屏幕上跨越。

此外,.menu還使用了flexbox,因此菜單項可以水平排成一行,而align-items屬性則垂直居中。

你還可以看到我們添加了flex:1; CSS規則到.logo元素。該flext屬性是一個flex-grow, flex-shrink, and flex-basis的簡寫。當它只有一個值時,它指的是flex-grow,而其他兩個屬性保持默認值。

當flex-grow設置為1時,表示給定元素獲得Flex容器中的所有額外空間。因此,當菜單項保持在右側時,menu元素被推到容器的左側。

5.放置折疊標題

折疊標題也具有固定位置,就像頂部菜單欄一樣。但是,它沒有獲得z-index值,因此當用戶向下滾動頁面并且其余內容逐漸覆蓋橫幅時,它可以“折疊”。

.banner {	/* for positioning */	width: 100%;	height: 300px;	position: fixed;	top: 70px;	background: linear-gradient(45deg, #98cbff, #98ffcb);	/* for content alignment */	display: flex;	flex-direction: column;	justify-content: space-evenly;	align-items: center;}

如你所見,我們再次使用flexbox來對齊折疊標題內的內容?,F在,它是一個基于列的flex布局,允許你使用justify-content和align-items屬性輕松地垂直和水平對齊元素。

6.設置折疊標題的樣式

雖然這不是折疊標題效果的一部分,但這里是.banner元素的后代(標題,描述和按鈕)在上面的演示中的樣式:

.banner-title {	font-size: 32px;	margin-bottom: 10px;	text-align: center;}.banner-desc {	font-size: 22px;	text-align: center;}.btn-signup {	color: white;	background-color: #0056ab;	border: 0;	padding: 15px 25px;	font-size: 16px;	cursor: pointer;}

在下面的屏幕截圖中,你可以看到我們的演示在此刻的樣子。由于頂部菜單欄和折疊標題都有固定位置,因此它們位于頁面頂部并覆蓋內容的上半部分。我們將通過設置其余內容的樣式,使標題在下一步中可折疊。

 

7.設計其余內容的樣式

要在滾動時使標題折疊,你需要做四件事:

  1. 最重要的是,你需要為其余內容設置背景,以便它可以在可折疊標頭的頂部流動。請記住,此效果與視差效果類似; 不同的背景需要互相覆蓋。
    1. 在演示中,我們使用了純白色背景。你始終需要在流動內容上設置背景以使此效果起作用(否則折疊標題不會折疊)。
  2. 相對于兩個固定元素定位內容。top:370px; 下面的規則是 (70px)和.banner(300px)的高度之和。
  3. 將寬度設置為100%,以便內容覆蓋整個標題。
  4. 將高度設置為100%,以便背景覆蓋頁面的整個高度(這在移動設備上或在較長頁面的情況下很重要)。

這是它在代碼中的樣子:

.article {	width: 100%;	position: relative;	top: 370px; 	background: white;	height: 100%; 	padding: 30px 10%;}.article p {	margin-bottom: 20px;}

查看整個代碼

并且,折疊標題已完成。下面,你可以查看整個CSS。你還可以查看本文中顯示的折疊標題效果的實時演示。

* {	box-sizing: border-box;	margin: 0;	padding: 0;	font-family: sans-serif;	color: #222;}a {	text-decoration: none;}ul {	list-style-type: none;}header {	height: 70px;	background: #222;	position: fixed;	width: 100%;	z-index: 99;}nav {	height: inherit;}.menu {	display: flex;	height: inherit;	align-items: center;	padding: 0 20px;}.menu li {	padding: 0 10px;}.menu a {	color: white;}.logo {	flex: 1;	font-size: 22px;}.banner {	/* for positioning */	width: 100%;	height: 300px;	position: fixed;	top: 70px;	background: linear-gradient(45deg, #98cbff, #98ffcb);	/* for content alignment */	display: flex;	flex-direction: column;	justify-content: space-evenly;	align-items: center;}.banner-title {	font-size: 32px;	margin-bottom: 10px;	text-align: center;}.banner-desc {	font-size: 22px;	text-align: center;}.btn-signup {	color: white;	background-color: #0056ab;	border: 0;	padding: 15px 25px;	font-size: 16px;	cursor: pointer;}.article {	width: 100%;	position: relative;	top: 370px; 	background: white;	height: 100%; 	padding: 30px 10%;}.article p {	margin-bottom: 20px;}

結論

折疊標題為你提供了一種用戶友好的方式,可以在頁面頂部顯示其他內容。它們的工作方式類似于視差效應; 你需要讓不同的背景以不同的速度移動,并將流動的內容相對于固定的元素定位。

以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持武林網。

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
国内精品久久久久影院优| 成人精品久久久| 91人成网站www| 久久久之久亚州精品露出| 亚洲欧美国产另类| 国产视频欧美视频| 国产aⅴ夜夜欢一区二区三区| 亚洲黄色www| 亚洲男人av电影| 一区二区日韩精品| 久久免费视频这里只有精品| 日韩av在线天堂网| 97av在线影院| 91精品国产91| 国产日本欧美在线观看| 欧美视频精品一区| 亚洲国产精品成人va在线观看| 欧美性猛交xxxx黑人猛交| 欧洲美女免费图片一区| 韩国精品美女www爽爽爽视频| 精品福利樱桃av导航| 亚洲欧美日韩国产成人| 久久99热这里只有精品国产| 亚洲一二三在线| 91精品国产成人www| 欧美精品www| 日韩精品在线视频美女| 91欧美精品午夜性色福利在线| 中文字幕最新精品| 国产欧美日韩中文字幕在线| 中文字幕一区二区三区电影| 欧美激情第三页| 国产精品无av码在线观看| 日本精品久久电影| 国产精品久久视频| 成人在线视频网| 亚洲影视中文字幕| 97视频免费在线观看| 久久人人爽人人| 精品久久香蕉国产线看观看gif| 一本色道久久综合狠狠躁篇的优点| 日韩电影中文字幕av| 日韩在线播放视频| 欧美激情一区二区三级高清视频| 琪琪亚洲精品午夜在线| 亚洲欧美一区二区三区情侣bbw| 在线一区二区日韩| 欧美日韩福利电影| 欧美电影在线观看| 91精品久久久久久久久不口人| 欧美激情videos| 久久视频在线观看免费| 91av在线精品| 国产精品亚洲综合天堂夜夜| 一本一本久久a久久精品综合小说| 91影院在线免费观看视频| 国产一区玩具在线观看| 欧美成人自拍视频| 亚洲欧美制服丝袜| 91亚洲va在线va天堂va国| 欧美重口另类videos人妖| 九九热这里只有在线精品视| 欧美激情精品久久久久久蜜臀| 欧美激情a∨在线视频播放| 欧美激情国内偷拍| 97久久精品国产| 亚洲欧美日韩图片| 国产最新精品视频| 久久人91精品久久久久久不卡| 午夜精品久久17c| 91影视免费在线观看| 亚洲欧美另类中文字幕| 91中文字幕一区| 精品久久久久久久久国产字幕| 精品久久久久久久大神国产| 国产精品美乳在线观看| 欧美激情小视频| 久久艳片www.17c.com| 日韩电影免费在线观看中文字幕| 欧美日本高清一区| 亚洲精品理论电影| 欧美一区第一页| 久久久久久久亚洲精品| 亚洲欧洲成视频免费观看| 亚洲电影中文字幕| 亚洲国产成人精品电影| 欧美日韩免费看| 日本欧美爱爱爱| 26uuu日韩精品一区二区| 操人视频在线观看欧美| 亚洲精品国产精品国产自| 欧美国产日韩精品| 国产91色在线|免| 国产精品久久久久一区二区| 色综合91久久精品中文字幕| 97超级碰碰人国产在线观看| 亚洲高清av在线| 国产精品亚洲激情| 日韩在线观看免费av| 国产精品成人免费电影| 欧美激情性做爰免费视频| 亚洲在线一区二区| 2019亚洲日韩新视频| 日韩精品在线观看一区| 亚洲最新视频在线| 国产精品麻豆va在线播放| 日韩免费在线观看视频| 日韩大陆欧美高清视频区| 51ⅴ精品国产91久久久久久| 日韩国产在线播放| 欧美福利视频在线观看| 国产精品最新在线观看| 色久欧美在线视频观看| 国产精品欧美日韩久久| 欧美最猛黑人xxxx黑人猛叫黄| 精品香蕉在线观看视频一| 538国产精品一区二区免费视频| 92看片淫黄大片欧美看国产片| 日韩免费中文字幕| 成人444kkkk在线观看| 日韩毛片在线看| 日韩激情片免费| 欧美国产日韩二区| 亚洲偷熟乱区亚洲香蕉av| 亚洲第一av网| 亚洲欧美综合区自拍另类| 亚洲午夜精品久久久久久性色| 国产欧美日韩中文字幕| 在线免费看av不卡| 亚洲国产精彩中文乱码av| 国产婷婷97碰碰久久人人蜜臀| 米奇精品一区二区三区在线观看| 成人激情免费在线| 精品伊人久久97| 日韩成人av在线| 狠狠久久五月精品中文字幕| 91国语精品自产拍在线观看性色| 亚洲欧美日韩精品久久奇米色影视| 亚洲成年人在线| 日韩有码在线观看| 国产在线98福利播放视频| 亚洲人成电影在线观看天堂色| 欧美性猛交丰臀xxxxx网站| 91九色精品视频| 欧美中文在线字幕| 亚洲一区二区三| 色香阁99久久精品久久久| 免费不卡在线观看av| 亚洲人成亚洲人成在线观看| 亚洲欧美制服丝袜| 欧美日韩福利在线观看| 欧美伊久线香蕉线新在线| 日韩视频免费中文字幕| 亚洲一区二区三区在线视频| 亚洲男人天堂2019| 亚洲福利在线视频| 久久久久久国产| 日韩视频免费看| 国产成人涩涩涩视频在线观看| 久久久中文字幕| 欧美亚洲激情在线| 欧美一级视频免费在线观看| 伊人久久精品视频| 亚洲一区二区三区毛片|