国产xxxx99真实实拍_久久不雅视频_高清韩国a级特黄毛片_嗯老师别我我受不了了小说

資訊專(zhuān)欄INFORMATION COLUMN

巧用CSS3:target 偽類(lèi)制作Dropdown下拉菜單(無(wú)JS)

littleGrow / 2198人閱讀

摘要:先上效果圖正如標(biāo)題所說(shuō),本文是教你如何巧用偽類(lèi)制作下拉菜單,原生,無(wú)。實(shí)際例子其實(shí)就是主題的右上角那個(gè)按鈕,你點(diǎn)一下就會(huì)有一個(gè)下拉菜單出現(xiàn),在其他區(qū)域點(diǎn)擊返回原狀。為了讓下拉菜單更顯下拉的情況,采用的定位下轉(zhuǎn)換原點(diǎn)。

原文鏈接:http://devework.com/css3-target-dropdown.html

:target 是CSS3 中新增的一個(gè)偽類(lèi),用以匹配當(dāng)前頁(yè)面的URI中某個(gè)標(biāo)志符的目標(biāo)元素(比如說(shuō)當(dāng)前頁(yè)面URL下添加#comment就會(huì)定位到id=“comment”的位置,俗稱(chēng)錨)。CSS3 為這個(gè)動(dòng)作賦予了更加多的功能——就如同:hover 一樣你可以做一些樣式定義。

先上效果圖

正如標(biāo)題所說(shuō),本文是教你如何巧用CSS3:target偽類(lèi)制作Dropdown下拉菜單,原生HTML+CSS,無(wú)JavaScript。為了吸引各位往下看,先上實(shí)際例子,再進(jìn)行剖析。

Duang~ 實(shí)際例子其實(shí)就是DeveMobile 主題的右上角那個(gè)按鈕,你點(diǎn)一下就會(huì)有一個(gè)Dropdown下拉菜單出現(xiàn),在其他區(qū)域點(diǎn)擊返回原狀。請(qǐng)用手機(jī)掃碼查看:


或者直接看這個(gè)gif 圖片:

實(shí)例剖析

從解釋原理的角度我們將HTML 拉出來(lái)最小化代碼如下:


大體上上面的HTML代碼可以分為兩部分,一部分是一個(gè)出發(fā)下拉動(dòng)作的入口(我習(xí)慣稱(chēng)為“開(kāi)關(guān)”)——通常是一個(gè)button(實(shí)例是將a標(biāo)簽替換為一個(gè)button的功能);一部分就是觸發(fā)動(dòng)作的下拉菜單顯示了。

可能你會(huì)問(wèn)close 這個(gè)類(lèi)修飾的a標(biāo)簽?zāi)嵌问亲鍪裁吹模慨?dāng)你觸發(fā)下拉菜單后,有時(shí)候需要做關(guān)閉(返回原狀)的動(dòng)作,而從具體情況(比如說(shuō)如本實(shí)例觸發(fā)菜單后菜單將原來(lái)的開(kāi)關(guān)都掩蓋了)或者用戶(hù)體驗(yàn)上考慮,最好是除菜單區(qū)域外的整個(gè)屏幕都隨便盲點(diǎn)就能關(guān)閉菜單。這個(gè)a標(biāo)簽就是實(shí)現(xiàn)在打開(kāi)開(kāi)關(guān)后產(chǎn)生一個(gè)透明的遮罩層覆蓋到屏幕上。

有了上面的思路,那么再具體化為下面的代碼(忽略個(gè)別無(wú)關(guān)緊要的樣式,SASS代碼):

 #dropdown-box {
.dropdown {
    opacity: 0;
    @include transform(scale(0, 0));
    @include transition(all 0.3s ease);
    overflow: hidden;
    z-index: 100;
    transform-origin: 100% 0;
    -webkit-transform-origin: 100% 0;
    -ms-transform-origin: 100% 0;
    -moz-transform-origin: 100% 0;
    }
}
.close {
    display: none;
    position: fixed;
    top: 0;
    right: 0;
    bottom: 0;
    left: 0;
    z-index: 999;
    width: 100%;
    height: 100%;
    background: transparent;
}
&:target .dropdown {
    @include transform(scale(1, 1));
    opacity: 1;
    z-index: 9999;
}
&:target .close {
    display: block;
}
}

稍微解釋下上面的SASS代碼:默認(rèn)的情況下是隱藏下拉菜單(采用透明屬性opacity 與CSS3的transformscale 縮小至0,遮罩層則默認(rèn)隱藏);當(dāng)開(kāi)關(guān)觸發(fā)后透明度變?yōu)?b>1且放到至正常的一倍,同時(shí)遮罩層顯示。為了讓下拉菜單更顯“下拉”的情況,采用CSS3的origin定位下轉(zhuǎn)換原點(diǎn)。

注意下兼容性,所有主流瀏覽器均支持 :target,除了 IE8 及更早的版本,移動(dòng)端的話(huà)直接用。稍微理解下你就可以運(yùn)用到自己的項(xiàng)目中了,have fun!

文章版權(quán)歸作者所有,未經(jīng)允許請(qǐng)勿轉(zhuǎn)載,若此文章存在違規(guī)行為,您可以聯(lián)系管理員刪除。

轉(zhuǎn)載請(qǐng)注明本文地址:http://m.specialneedsforspecialkids.com/yun/49590.html

相關(guān)文章

  • css--下拉菜單

    摘要:部分類(lèi)使用這將設(shè)置下拉菜單的內(nèi)容放置在下拉按鈕使用的右下角位置。類(lèi)中是實(shí)際的下拉菜單。我們使用屬性讓下拉菜單看起來(lái)像一個(gè)卡片。選擇器用于在用戶(hù)將鼠標(biāo)移動(dòng)到下拉按鈕上時(shí)顯示下拉菜單。 一、下拉菜單 1、示例 代碼如下 下拉菜單.dropbtn { background-color: #4CAF50; color: white; padding: 16px; font-size: 16p...

    stormzhang 評(píng)論0 收藏0
  • css--下拉菜單

    摘要:部分類(lèi)使用這將設(shè)置下拉菜單的內(nèi)容放置在下拉按鈕使用的右下角位置。類(lèi)中是實(shí)際的下拉菜單。我們使用屬性讓下拉菜單看起來(lái)像一個(gè)卡片。選擇器用于在用戶(hù)將鼠標(biāo)移動(dòng)到下拉按鈕上時(shí)顯示下拉菜單。 一、下拉菜單 1、示例 代碼如下 下拉菜單.dropbtn { background-color: #4CAF50; color: white; padding: 16px; font-size: 16p...

    HmyBmny 評(píng)論0 收藏0
  • semantic-ui的下拉菜單效果在網(wǎng)頁(yè)中的實(shí)現(xiàn)以及初始化

    摘要:是什么框架是一款很好用的工具,集成了很多很漂亮的模塊,能夠使網(wǎng)頁(yè)制作更加高效和美觀(guān)。今天使用的時(shí)候遇到一點(diǎn)問(wèn)題記下來(lái)首先引入效果不對(duì)這時(shí)是需要初始化的文檔沒(méi)有只能靠猜加上初始化小坑填平遇錯(cuò)來(lái)看 semantic是什么框架 semantic UI 是一款很好用的CSS工具,集成了很多很漂亮的UI模塊,能夠使網(wǎng)頁(yè)制作更加高效和美觀(guān)。今天使用的時(shí)候遇到一點(diǎn)問(wèn)題記下來(lái) 首先引入 showImg...

    twohappy 評(píng)論0 收藏0
  • FCC 成都社區(qū)·前端周刊 第 11 期

    摘要:正式發(fā)布已正式發(fā)布,新版本重點(diǎn)關(guān)注工具鏈以及工具鏈在中的運(yùn)行速度問(wèn)題。文章內(nèi)容包括什么是內(nèi)存,內(nèi)存生命周期,中的內(nèi)存分配,內(nèi)存釋放,垃圾收集,種常見(jiàn)的內(nèi)存泄漏以及如何處理內(nèi)存泄漏的技巧。 1. Angular 6 正式發(fā)布 Angular 6.0.0 已正式發(fā)布,新版本重點(diǎn)關(guān)注工具鏈以及工具鏈在 Angular 中的運(yùn)行速度問(wèn)題。Angular v6 是統(tǒng)一整體框架、Material ...

    lentrue 評(píng)論0 收藏0
  • FCC 成都社區(qū)·前端周刊 第 11 期

    摘要:正式發(fā)布已正式發(fā)布,新版本重點(diǎn)關(guān)注工具鏈以及工具鏈在中的運(yùn)行速度問(wèn)題。文章內(nèi)容包括什么是內(nèi)存,內(nèi)存生命周期,中的內(nèi)存分配,內(nèi)存釋放,垃圾收集,種常見(jiàn)的內(nèi)存泄漏以及如何處理內(nèi)存泄漏的技巧。 1. Angular 6 正式發(fā)布 Angular 6.0.0 已正式發(fā)布,新版本重點(diǎn)關(guān)注工具鏈以及工具鏈在 Angular 中的運(yùn)行速度問(wèn)題。Angular v6 是統(tǒng)一整體框架、Material ...

    NusterCache 評(píng)論0 收藏0

發(fā)表評(píng)論

0條評(píng)論

最新活動(dòng)
閱讀需要支付1元查看
<