999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

網(wǎng)頁(yè)制作中下拉菜單的制作方法解析

2017-12-01 09:10:31高娟閻知知黃龍陸軍工程大學(xué)軍械士官學(xué)校
數(shù)碼世界 2017年10期
關(guān)鍵詞:方法

高娟 閻知知 黃龍 陸軍工程大學(xué)軍械士官學(xué)校

網(wǎng)頁(yè)制作中下拉菜單的制作方法解析

高娟 閻知知 黃龍 陸軍工程大學(xué)軍械士官學(xué)校

在網(wǎng)頁(yè)制作中,經(jīng)常會(huì)用到下拉菜單。本文通過(guò)具體案例詳細(xì)介紹了利用CSS、JavaScript、jQuery技術(shù)實(shí)現(xiàn)下拉菜單的3種方法,并對(duì)其進(jìn)行了比較。

下拉菜單 CSS JavaScript jQuery

在網(wǎng)頁(yè)制作中,經(jīng)常會(huì)用到下拉菜單,當(dāng)鼠標(biāo)放在一級(jí)導(dǎo)航菜單項(xiàng)上的時(shí)候,彈出下拉菜單,當(dāng)鼠標(biāo)移走的時(shí)候,下拉菜單消失。如何制作這種具有動(dòng)態(tài)效果的下拉菜單?作者通過(guò)多個(gè)項(xiàng)目的工作實(shí)踐,總結(jié)出3種方法,下面進(jìn)行詳細(xì)解析。

要制作具有動(dòng)態(tài)效果的下拉菜單,第一步是靜態(tài)網(wǎng)頁(yè)的制作,先制作出具有兩級(jí)菜單的靜態(tài)網(wǎng)頁(yè)。第二步是動(dòng)態(tài)效果的實(shí)現(xiàn),主要用來(lái)實(shí)現(xiàn)下拉菜單的顯示和隱藏。

1 靜態(tài)網(wǎng)頁(yè)的制作

制作靜態(tài)網(wǎng)頁(yè)主要用到HTML+CSS技術(shù)。首先制作出如圖1所示的二級(jí)導(dǎo)航靜態(tài)菜單。

圖1 二級(jí)導(dǎo)航靜態(tài)菜單

html代碼如下:<div id="nav">

<ul>

<li><a href="#">首頁(yè)</a></li>

<li><a href="#">課程大廳</a>

<ul>

<li><a href="#">javaScript</a></li>

<li><a href="#">jQuery</a></li>

</ul>

</li>

<li><a href="#"> 學(xué)習(xí)中心 </a></li>

<li><a href="#"> 經(jīng)典案例 </a></li>

<li><a href="#"> 關(guān)于我們 </a></li>

</ul>

</div>

CSS代碼如下:

<style type="text/css">

*{margin:0px; padding:0px;}

#nav{background-color:#eee; width:600px;height:40px; margin:0 auto;}

ul{list-style:none;}

ul li{float:left; line-height:40px; text-align:center;position:relative;}

a{text-decoration: none; color:#000; display:block;padding:0 10px;}

a:hover{color:#fff; background-color:#666;}

ul li ul li{float:none; background-color:#eee;margin-top:2px;}

ul li ul{position:absolute; left:0px; top:40px;}

</style>

靜態(tài)效果實(shí)現(xiàn)過(guò)程中的難點(diǎn)如下:

①一級(jí)菜單項(xiàng)的寬度不能固定,需根據(jù)內(nèi)容自適應(yīng),所以不用設(shè)置一級(jí)菜單項(xiàng)的寬度。

②各一級(jí)菜單項(xiàng)之間應(yīng)該有一定的間距,可以通過(guò)設(shè)置左右padding值實(shí)現(xiàn),但為了使每個(gè)菜單項(xiàng)內(nèi)超鏈接<a>的寬度與列表項(xiàng)<li>的寬度相等,所以這個(gè)padding值設(shè)置在了<a>上。

③超鏈接的display屬性默認(rèn)為inline行內(nèi)元素,應(yīng)設(shè)為block塊級(jí)元素,這樣當(dāng)鼠標(biāo)移到超鏈接上時(shí),超鏈接所在的整個(gè)列表項(xiàng)li的背景區(qū)域都變成顏色#666。

④二級(jí)菜單的寬度不能影響它所對(duì)應(yīng)的一級(jí)菜單項(xiàng)的寬度,因此需要為二級(jí)菜單設(shè)置絕對(duì)定位位置,而一級(jí)菜單項(xiàng)應(yīng)設(shè)為相對(duì)定位。

2 動(dòng)態(tài)效果的實(shí)現(xiàn)

當(dāng)鼠標(biāo)放在一級(jí)導(dǎo)航菜單項(xiàng)上的時(shí)候,彈出下拉菜單,當(dāng)鼠標(biāo)移走的時(shí)候,下拉菜單消失,實(shí)現(xiàn)這種動(dòng)態(tài)效果有3種方法。

2.1 CSS方法實(shí)現(xiàn)

用CSS方法是通過(guò)設(shè)置二級(jí)ul的display屬性實(shí)現(xiàn)的,初始狀態(tài)的二級(jí)ul的display屬性設(shè)為none代表初始不顯示,然后修改二級(jí)菜單對(duì)應(yīng)的一級(jí)菜單項(xiàng)的hover狀態(tài)的display屬性值為block。代碼如下:

ul li ul{position:absolute; left:0px; top:40px;display:none;}

ul li:hover ul{display:block;}

2.2 JavaScript方法實(shí)現(xiàn)

用JavaScript方法是通過(guò)為一級(jí)菜單項(xiàng)添加鼠標(biāo)經(jīng)過(guò)onmouseover事件方法和鼠標(biāo)離開onmouseout事件方法實(shí)現(xiàn)的。代碼如下:

<li onmouseover="showsubmenu(this)" onmouseout="hidesubmenu(this)"><a href="#">課程大廳</a><script text="text/javascript">function showsubmenu(li){

var submenu = li.getElementsByTagName("ul")[0];submenu.style.display = "block";

}

function hidesubmenu(li){

var submenu = li.getElementsByTagName("ul")[0];submenu.style.display = "none";

}

</script>

2.3 jQuery方法實(shí)現(xiàn)

用jQuery方法首先要在html文檔頭部引入jQuery庫(kù),可以引用下載到本機(jī)的jQuery庫(kù)文件,也可以引用在線的jQuery庫(kù)文件,然后為一級(jí)菜單項(xiàng)設(shè)置“類”屬性,最后在jQuery函數(shù)中引用children()方法找到子元素,用show()方法顯示HTML元素,用hide()方法隱藏HTML元素。代碼如下:

<script src="jquery-1.8.3.min.js"></script>

<li class="navmenu"><a href="#"> 課程大廳</a>

<script type="text/javascript">

$(function(){

$(".navmenu").mouseover(function(){

$(this).children("ul").show();

}).mouseout(function(){

$(this).children("ul").hide();

})

})

</script>

3 三種方法的比較

通過(guò)以上介紹,我們可以看出,第一種CSS方法最簡(jiǎn)單直接,第二種JavaScript方法和第三種jQuery方法的思想是相同的,都是要先找到鼠標(biāo)當(dāng)前所在一級(jí)菜單項(xiàng)的二級(jí)菜單ul對(duì)象,接下來(lái)JavaScript方法是通過(guò)設(shè)置ul的display屬性來(lái)控制二級(jí)菜單的顯示和隱藏,而jQuery方法是通過(guò)調(diào)用show()和hide()方法來(lái)控制二級(jí)菜單的顯示和隱藏。另外,用JavaScript方法需要在html標(biāo)簽中加入鼠標(biāo)經(jīng)過(guò)事件和鼠標(biāo)離開事件的JavaScript代碼,而用jQuery方法不需要在html標(biāo)簽中加入jQuery代碼,鼠標(biāo)經(jīng)過(guò)事件和鼠標(biāo)離開事件的方法在jQuery代碼中,實(shí)現(xiàn)了代碼和html標(biāo)簽的完全分離,因此結(jié)構(gòu)更清晰。

至此,我們已經(jīng)利用三種方法實(shí)現(xiàn)了二級(jí)下拉菜單的顯示和隱藏,大家對(duì)下拉菜單的實(shí)現(xiàn)一定有了更深刻的理解,在實(shí)際網(wǎng)頁(yè)制作中,還會(huì)遇到三級(jí)下拉菜單、變換菜單、動(dòng)畫菜單等各種下拉菜單的變體,相信大家在實(shí)際工作中不斷探索和積累,會(huì)對(duì)下拉菜單的制作有更多新的發(fā)現(xiàn)。

[1]周靜.福建電腦[J].基于DIV+CSS網(wǎng)頁(yè)下拉菜單的實(shí)現(xiàn),2012年第10期.

[2]魏穎穎.計(jì)算機(jī)技術(shù)與發(fā)展[J].基于CSS的網(wǎng)頁(yè)下拉菜單設(shè)計(jì)與實(shí)現(xiàn),2011年第4期.

猜你喜歡
方法
中醫(yī)特有的急救方法
中老年保健(2021年9期)2021-08-24 03:52:04
高中數(shù)學(xué)教學(xué)改革的方法
化學(xué)反應(yīng)多變幻 “虛擬”方法幫大忙
變快的方法
兒童繪本(2020年5期)2020-04-07 17:46:30
學(xué)習(xí)方法
用對(duì)方法才能瘦
Coco薇(2016年2期)2016-03-22 02:42:52
最有效的簡(jiǎn)單方法
山東青年(2016年1期)2016-02-28 14:25:23
四大方法 教你不再“坐以待病”!
Coco薇(2015年1期)2015-08-13 02:47:34
賺錢方法
捕魚
主站蜘蛛池模板: 国产国语一级毛片在线视频| 亚卅精品无码久久毛片乌克兰 | 欧美亚洲综合免费精品高清在线观看| 日本欧美视频在线观看| 91人人妻人人做人人爽男同| 亚洲国产天堂久久九九九| 亚洲精品在线观看91| 高清无码不卡视频| 国产女同自拍视频| 亚洲国产综合自在线另类| 国产精品亚欧美一区二区三区 | 欧美一区二区三区不卡免费| 国产日本欧美亚洲精品视| 国产精品第一区| 国产精品网址你懂的| 日本妇乱子伦视频| 国产网站免费观看| 婷婷激情亚洲| 9啪在线视频| 91麻豆精品国产高清在线| 99re热精品视频中文字幕不卡| 99精品视频在线观看免费播放| 亚洲美女一区| 免费va国产在线观看| 色噜噜综合网| 亚洲精品国产精品乱码不卞| 亚洲 欧美 偷自乱 图片| 欧美中文字幕在线视频| 亚洲成人免费看| 亚洲中文字幕在线精品一区| 玩两个丰满老熟女久久网| 国产av剧情无码精品色午夜| 91精品国产一区| 日韩少妇激情一区二区| 国内精品一区二区在线观看| 亚洲精品色AV无码看| 88av在线播放| 成年免费在线观看| 亚洲自拍另类| 美女毛片在线| 91青青在线视频| 国产h视频免费观看| 免费在线不卡视频| 另类综合视频| 国产精品美女网站| 久久久国产精品免费视频| 国产人碰人摸人爱免费视频| 97久久超碰极品视觉盛宴| 久久亚洲AⅤ无码精品午夜麻豆| 国产精品女熟高潮视频| 国产在线精彩视频二区| 任我操在线视频| 亚洲第一精品福利| 久久久久九九精品影院 | 国产午夜无码专区喷水| 一本久道久久综合多人| 日韩午夜伦| 99热在线只有精品| 国产在线无码一区二区三区| 国产va免费精品观看| 中文字幕亚洲综久久2021| 色屁屁一区二区三区视频国产| 亚洲色成人www在线观看| 免费a在线观看播放| 国产又色又刺激高潮免费看| 国产成人盗摄精品| 毛片基地视频| 国产欧美中文字幕| 91精品久久久无码中文字幕vr| a级毛片毛片免费观看久潮| 国产一在线| 久久久久人妻精品一区三寸蜜桃| 91黄视频在线观看| 久久久久国产一级毛片高清板| 999国内精品视频免费| 亚洲精品va| 免费va国产在线观看| 无码福利视频| 国内毛片视频| 精品国产成人a在线观看| 国产微拍精品| 国产精品无码作爱|