HTML+CSS:滑動手風琴

今天學習做一個簡單的前端demo滑動手風琴悠砚,效果如下,在鼠標移入的時候圖標變大且背景顏色改變堂飞,右側(cè)出現(xiàn)介紹的文字灌旧,同時做出響應(yīng)式的頁面

手風琴.png
手風琴hover.png

首先是HTML部分

<!DOCTYPE html>
<html>
    <head>
        <meta charset="utf-8" />
        <title></title>
        <link rel="stylesheet" type="text/css" href="css/style.css"/>
        <link  rel="stylesheet">
    </head>
    <body>
        <div class="container">
            <header>
                <h1>HTML+CSS:滑動手風琴</h1>
            </header>
            <ul class="contentall">
                <!-- 設(shè)置一個無序列表包含六個li標簽存放六個板塊 -->
                <!-- 第一個板塊開始 -->
                <li class="menu">
                    <div class="social youtube">
                        <a href="">youtube</a>
                        <!-- 設(shè)置超鏈接后續(xù)插入圖片可點入轉(zhuǎn)跳 -->    
                    </div>
                    <div class="content">
                        <h1>YouTuBe</h1>
                        <p>hello,i want to recommend this application to you.hello,i want to recommend this application to you.</p>
                    </div>
                        <!-- 設(shè)置一個盒子存放標題和內(nèi)容 -->    
                </li>
                <!-- 第二個板塊開始 -->
                <li class="menu">
                    <div class="social Twitter">
                        <a href="">twitter</a>
                    </div>
                    <div class="content">
                        <h1>Twitter</h1>
                        <p>hello,i want to recommend this application to you.</p>
                    </div>
                </li>
                <!-- 第三個板塊開始 -->
                <li class="menu">
                    <div class="social FaceBook">
                        <a href="">facebook</a>
                    </div>
                    <div class="content">
                        <h1>Facebook</h1>
                        <p>hello,i want to recommend this application to you.</p>
                    </div>                  
                </li>
                <!-- 第四個板塊開始 -->
                <li class="menu">
                    <div class="social LinKedin">
                        <a href="">linkedin</a>
                    </div>
                    <div class="content">
                        <h1>Linkedin</h1>
                        <p>hello,i want to recommend this application to you.</p>
                    </div>
                </li>
                <!-- 第五個板塊開始 -->
                <li class="menu">
                    <div class="social Instagram">
                        <a href="">Instagram</a>
                    </div>
                    <div class="content">
                        <h1>Instagram</h1>
                        <p>hello,i want to recommend this application to you.</p>
                    </div>
                </li>
                <!-- 第六個板塊開始 -->
                <li class="menu">
                    <div class="social github">
                        <a href="">github</a>
                    </div>
                    <div class="content">
                        <h1>Github</h1>
                        <p>hello,i want to recommend this application to you.</p>
                    </div>
                    
                </li>
            </ul>
        </div>
    </body>
</html>

圖標可以在iconfont官網(wǎng)下載使用,也可以在BootCDN上搜索genericons 用link鏈接引入直接使用绰筛。
<link rel="stylesheet">

下面是 CSS部分
首先先reset網(wǎng)頁基本樣式枢泰,設(shè)置容器大小背景顏色字體,再設(shè)置標題樣式

*{
    margin: 0;
    padding: 0;
    border: 0;
}
body{
    background-color: #222;
    font-family: Arial, Helvetica, sans-serif;
}
.container{
    width: 90%;
    margin: 50px auto;
  /*水平居中*/
}
header h1{
    color: white;
    margin-bottom: 10px;
    text-align: center;
}

下面設(shè)置列表的CSS樣式

.contentall{
    background-color: #333;
    width: 100%;
    height: 200px;
    min-width: 800px;
    font-size: 0;/*先設(shè)置字體隱藏后續(xù)顯示*/
    overflow: hidden;/*隱藏超出部分铝噩,不出現(xiàn)滾輪*/
    display: block;/*屬性為塊元素獨占一行*/
    list-style: none;
}
.menu{
    background-color: #444;
    border-right: #333 1px solid;
    overflow: hidden;/*隱藏超出部分衡蚂,不出現(xiàn)滾輪*/
    width: 80px;
    height: 200px;
    display: inline-block;/*屬性為行內(nèi)塊元素,可以在同一行排列*/
    position: relative;
    margin: 0;
    transition: all 0.5s ease-in-out 0.1s;/*設(shè)置過渡屬性,使下面的偽類變換更加流暢順滑*/
}

設(shè)置li的hover屬性毛甲,使寬度增加年叮,內(nèi)容區(qū)域顯示。即鼠標移入時右側(cè)伸長顯示內(nèi)容區(qū)域

.menu:hover{
    width: 450px;   
}

下面設(shè)置內(nèi)容區(qū)域的樣式

.menu .content{
    background-color: #FFFFFF;
    width: 360px;
    height: 200px;
    margin-left: 80px;/*改變左外邊距使內(nèi)容區(qū)域和圖片區(qū)域位置更換*/
    position: relative;
    padding: 50px 0 0 15px;
}
.menu .content h1{
    font-size: 2.5rem;/*設(shè)置字體大小使字體顯示*/
    margin-bottom: 10px;
}
.menu .content p{
    font-size: 0.85rem;
    line-height: 1.4rem;
    padding-right: 30px;
}

要達到圖片區(qū)域鼠標移入切換的效果玻募,需要在a標簽前后增加::before和::after偽類

.social a::before,.social a::after{
    width: 80px;
    height: 200px;
    position: absolute;
    text-indent: 0;
    padding-top: 90px;
    padding-left: 25px;
    display: block;
    font: normal 30px Genericons;
    color: #fff;
    transition: all 0.4s ease-in-out 0.1s;
/*添加過渡屬性使鼠標移入時變化流暢順滑只损,達到手風琴的效果*/
    
}
.social a::after{
    font-size: 48px;/*設(shè)置移入后顯示的圖標變大*/
    padding-left: 20px;
    padding-top: 80px;
    margin-left: 85px;/*鼠標未移入時該部分隱藏*/

下面引入genericons圖標,設(shè)置::after內(nèi)容顏色不單一(\f213為特定圖標的unicode編碼七咧,可去官網(wǎng)查看)

.youtube a::before,.youtube a::after{
    content:"\f213";
}
.youtube a::after{
    background-color: #f00;
}
.FaceBook a::before,.FaceBook a::after{
    content:"\f204";
}
.FaceBook a::after{
    background-color: #3b5998;
}
.Instagram a::before,.Instagram a::after{
    content:"\f215";
}
.Instagram a::after{
    background-color: #6dc993;
}
.LinKedin a::before,.LinKedin a::after{
    content:"\f208";
}
.LinKedin a::after{
    background-color: #00a9cd;
}
.Twitter a::before,.Twitter a::after{
    content:"\f202";
}
.Twitter a::after{
    background-color: #6dc5dd;
}
.github a::before,.github a::after{
    content:"\f200";
}
.github a::after{
    background-color: #6e5494;
}

最后設(shè)置hover偽類跃惫,鼠標移入時原先before板塊向左隱藏,after板塊向左移動出現(xiàn)坑雅,實現(xiàn)手風琴效果辈挂,且通過過渡效果變得流暢舒適衬横。

.menu:hover .social a::before{
    margin-left: -100px;
}
.menu:hover .social a::after{
    margin-left: -5px;

簡單的滑動手風琴效果已經(jīng)實現(xiàn)裹粤,下面我們來設(shè)置網(wǎng)頁的響應(yīng)式布局。使我們的滑動手風琴可以適應(yīng)不同顯示器的大小蜂林。我們使用媒體查詢@media來設(shè)置我們不同分辨率的樣式遥诉。

@media (max-width:950px){/*當最大寬度達到950px時切換到以下樣式*/
    .container{
        width: 70%;
    }
    .menu{
        display: block;
        width: 100%;
        border-bottom: 3px #333 solid;/*分辨率減小,列表豎向排列方便閱讀*/
    }
    .contentall{
        display: block;
        height: auto;
        min-width: 450px;
        
    }
    .menu .content{
        width: 85%;
    }
    .menu:hover{
        width: 100%;/*防止移入時右側(cè)內(nèi)容部分左移*/
    }
}

效果如下圖

自適應(yīng)手風琴.png

而當分辨率更小達到手機類時噪叙,再設(shè)置一個媒體查詢來自適應(yīng)矮锈。

@media (max-width:680px) {
    .container{
        width: 95%;
    }
    .contentall{
        width: 100%;
        min-width: 350px;
    }
}
自適應(yīng)手風琴2.png

自適應(yīng)的界面使不同分辨率的用戶都能有更好的體驗。
到此睁蕾,一個滑動手風琴的Demo就完成了苞笨。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個濱河市子眶,隨后出現(xiàn)的幾起案子瀑凝,更是在濱河造成了極大的恐慌,老刑警劉巖臭杰,帶你破解...
    沈念sama閱讀 207,248評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件粤咪,死亡現(xiàn)場離奇詭異,居然都是意外死亡渴杆,警方通過查閱死者的電腦和手機寥枝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,681評論 2 381
  • 文/潘曉璐 我一進店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來磁奖,“玉大人囊拜,你說我怎么就攤上這事”却睿” “怎么了艾疟?”我有些...
    開封第一講書人閱讀 153,443評論 0 344
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我蔽莱,道長弟疆,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,475評論 1 279
  • 正文 為了忘掉前任盗冷,我火速辦了婚禮怠苔,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘仪糖。我一直安慰自己柑司,他們只是感情好,可當我...
    茶點故事閱讀 64,458評論 5 374
  • 文/花漫 我一把揭開白布锅劝。 她就那樣靜靜地躺著攒驰,像睡著了一般。 火紅的嫁衣襯著肌膚如雪故爵。 梳的紋絲不亂的頭發(fā)上玻粪,一...
    開封第一講書人閱讀 49,185評論 1 284
  • 那天,我揣著相機與錄音诬垂,去河邊找鬼劲室。 笑死,一個胖子當著我的面吹牛结窘,可吹牛的內(nèi)容都是我干的很洋。 我是一名探鬼主播,決...
    沈念sama閱讀 38,451評論 3 401
  • 文/蒼蘭香墨 我猛地睜開眼隧枫,長吁一口氣:“原來是場噩夢啊……” “哼喉磁!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起官脓,我...
    開封第一講書人閱讀 37,112評論 0 261
  • 序言:老撾萬榮一對情侶失蹤协怒,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后确买,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體斤讥,經(jīng)...
    沈念sama閱讀 43,609評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,083評論 2 325
  • 正文 我和宋清朗相戀三年湾趾,在試婚紗的時候發(fā)現(xiàn)自己被綠了芭商。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,163評論 1 334
  • 序言:一個原本活蹦亂跳的男人離奇死亡搀缠,死狀恐怖铛楣,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情艺普,我是刑警寧澤簸州,帶...
    沈念sama閱讀 33,803評論 4 323
  • 正文 年R本政府宣布鉴竭,位于F島的核電站,受9級特大地震影響岸浑,放射性物質(zhì)發(fā)生泄漏搏存。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,357評論 3 307
  • 文/蒙蒙 一矢洲、第九天 我趴在偏房一處隱蔽的房頂上張望璧眠。 院中可真熱鬧,春花似錦读虏、人聲如沸责静。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,357評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽灾螃。三九已至,卻和暖如春揩徊,著一層夾襖步出監(jiān)牢的瞬間腰鬼,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,590評論 1 261
  • 我被黑心中介騙來泰國打工靴拱, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留垃喊,地道東北人猾普。 一個月前我還...
    沈念sama閱讀 45,636評論 2 355
  • 正文 我出身青樓袜炕,卻偏偏與公主長得像,于是被迫代替她去往敵國和親初家。 傳聞我的和親對象是個殘疾皇子偎窘,可洞房花燭夜當晚...
    茶點故事閱讀 42,925評論 2 344

推薦閱讀更多精彩內(nèi)容