HTML+CSS+JavaScript實現(xiàn)下拉菜單效果
本文實例為大家分享了HTML+CSS+JavaScript實現(xiàn)下拉菜單效果的具體代碼,供大家參考,具體內容如下
實現(xiàn)思路:
HTML 方面,導航欄的每個 <li> 元素里面包含 <a> 和 <ul> ,將 <li> 設置為相對定位, 將 <ul> 設置為絕對定位,并將 <ul> 的 display 屬性設置為 none 。通過 js 給導航欄的每個 <li> 添加事件監(jiān)聽器,當鼠標覆蓋 <li> 時,令 <ul> 的 display 屬性值為 block;當鼠標離開 <li> 時,令 <ul> 的 display 屬性值為 none;
效果演示:
源代碼:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8"> <title>下拉菜單</title> <style> * { margin: 0; padding: 0; box-sizing: border-box; } body { background-color: #ffb900; } a { cursor: default; text-decoration: none; font-size: 20px; font-weight: 700; color: #fff; letter-spacing: 3px; } li { list-style: none; cursor: default; } .container { position: absolute; top: 30%; left:50%; transform: translate(-50%, -50%); box-shadow: 0 10px 10px rgba(10, 20, 20, .20), 0 0 10px rgba(10, 20, 20, .20); font-size: 0; } .container .nav { display: inline-block; position: relative; width: 150px; height: 50px; background-color: #505050; text-align: center; line-height: 50px; } .container .nav:hover { background-color: #3e3e3e; } .container .nav ul { display: none; position: absolute; top: 50px; width: 100%; box-shadow: 0 10px 10px rgba(10, 20, 20, .20), 0 0 10px rgba(10, 20, 20, .20); background-color: #fff; text-align: center; } .container .nav ul li a { display: block; color: #505050; } .container .nav ul li a:hover { background-color: #e1e1e1; } </style> </head> <body> <ul class="container"> <li class="nav"> <a href="#">水果</a> <ul> <li><a href="#">西瓜</a></li> <li><a href="#">香蕉</a></li> <li><a href="#">哈密瓜</a></li> <li><a href="#">橙子</a></li> </ul> </li> <li class="nav"> <a href="#">蔬菜</a> <ul> <li><a href="#">西紅柿</a></li> <li><a href="#">土豆</a></li> <li><a href="#">小白菜</a></li> <li><a href="#">黃花菜</a></li> </ul> </li> <li class="nav"> <a href="#">酒水</a> <ul> <li><a href="#">啤酒</a></li> <li><a href="#">橙汁</a></li> <li><a href="#">可樂</a></li> <li><a href="#">雪碧</a></li> </ul> </li> <li class="nav"> <a href="#">零食</a> <ul> <li><a href="#">餅干</a></li> <li><a href="#">面包</a></li> <li><a href="#">辣條</a></li> <li><a href="#">沙琪瑪</a></li> </ul> </li> </ul> <script> let nav = document.querySelectorAll('.nav'); for(let i=0; i<nav.length; i++) { nav[i].addEventListener('mouseover', function() { this.children[1].style.display = "block"; }); nav[i].addEventListener('mouseout', function() { this.children[1].style.display = "none"; }); } </script> </body> </html>
以上就是本文的全部內容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關文章
Javascript實現(xiàn)禁止輸入中文或英文的例子
這篇文章主要介紹了Javascript實現(xiàn)禁止輸入中文或英文的方法實例,本文方法都是使用正則表達式實現(xiàn),需要的朋友可以參考下2014-12-12window.parent調用父框架時 ie跟火狐不兼容問題
window.parent調用父框架時,ie跟火狐不兼容問題!2009-07-07微信小程序如何調用新聞接口實現(xiàn)列表循環(huán)
這篇文章主要介紹了微信小程序如何調用新聞接口實現(xiàn)列表循環(huán),文中通過示例代碼介紹的非常詳細,對大家的學習或者工作具有一定的參考學習價值,需要的朋友可以參考下2019-07-07layer ui插件顯示tips時,修改字體顏色的實現(xiàn)方法
今天小編就為大家分享一篇layer ui插件顯示tips時,修改字體顏色的實現(xiàn)方法,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-09-09javascript實現(xiàn)網(wǎng)站加入收藏功能
這篇文章主要介紹了javascript實現(xiàn)網(wǎng)站加入收藏功能的相關資料,需要的朋友可以參考下2015-12-12