HTML+CSS导航之下拉菜单方法1——JS

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTML+CSS导航之下拉菜单方法1——JS相关的知识,希望对你有一定的参考价值。

代码:

 1 <!DOCTYPE html>
 2 <html lang="zh-CN">
 3 <head>
 4   <meta charset="UTF-8">
 5   <title>下拉菜单之JS</title>
 6   <style>
 7     * {
 8       margin: 0;
 9       padding: 0;
10       border: 0;
11     }
12     /*基本代码*/
13     #dropdown {
14       width: 648px;
15       height: 40px;
16       margin: 0 auto;
17     }
18     #dropdown ul {
19       list-style-type: none;
20     }
21     #dropdown ul li {
22       position: relative;
23       float: left;
24     }
25     #dropdown a {
26       display: block;
27       min-width: 108px;
28       text-align: center;
29       text-decoration: none;
30       line-height: 40px;
31       background-color: #eeeeee;
32       color: #000000;
33     }
34     #dropdown a:hover {
35       background-color: #666666;
36       color: #ffffff;
37     }
38     #dropdown ul li ul li {
39       float: none; /*不设置左浮动也就是垂直显示*/
40     }
41     /*以下是下拉菜单显示和隐藏的代码*/
42     #dropdown ul li ul { /*子菜单必须设定绝对定位,否则会占据空间导致内容移动*/
43       position: absolute; /*如果设置了left、top等属性,则父级要设置相对定位,如果不设置,则跟static的位置一样,会被父级为static或者relative顶下去,只是本身不占空间了*/
44       display: none;
45     }
46   </style>
47   <script>
48     function showsubmenu (li) {
49       var submenu = li.getElementsByTagName(ul); /*获取子菜单标签,下标从0开始*/
50       submenu[0].style.display = block;
51     }
52     function hidesubmenu(li) {
53       var submenu = li.getElementsByTagName(ul);
54       submenu[0].style.display = none;
55     }
56   </script>
57 </head>
58 <body>
59   <div id="dropdown">
60     <ul>
61       <li><a href="">首 页</a></li>
62       <li onmousemove="showsubmenu(this)" onmouseout="hidesubmenu(this)"><a href="">主菜单一</a>
63         <ul>
64           <li><a href="">子菜单一</a></li>
65           <li><a href="">子菜单二</a></li>
66           <li><a href="">子菜单三</a></li>
67         </ul>
68       </li>
69       <li onmousemove="showsubmenu(this)" onmouseout="hidesubmenu(this)"><a href="">主菜单二</a>
70         <ul>
71           <li><a href="">子菜单一</a></li>
72           <li><a href="">子菜单二</a></li>
73           <li><a href="">子菜单三</a></li>
74           <li><a href="">子菜单四</a></li>
75         </ul>
76       </li>
77       <li><a href="">主菜单三</a></li>
78       <li><a href="">主菜单四</a></li>
79       <li><a href="">主菜单五</a></li>
80     </ul>
81   </div>
82   <p>aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</p>
83 </body>
84 </html>

 

以上是关于HTML+CSS导航之下拉菜单方法1——JS的主要内容,如果未能解决你的问题,请参考以下文章

html+css下拉菜单怎么制作

CSS实现的大型导航下拉菜单

CSS实现的大型导航下拉菜单

HTML导航之下拉菜单方法3——JQuery下拉菜单

用原生JS实现的一个导航下拉菜单,下拉菜单的宽度与浏览器视口的宽度一样(js+html+css)

css js 下拉菜单会突然消失之谜