Maison >interface Web >tutoriel HTML >下拉菜单效果_html/css_WEB-ITnose

下拉菜单效果_html/css_WEB-ITnose

WBOY
WBOYoriginal
2016-06-24 11:46:541072parcourir

  之前为大家介绍过有关HTML中的一些比较炫的效果,本篇为大家介绍一些,大家在网站中经常可以见到的一种下拉菜单效果,这种菜单效果一般分为两层,当我们的鼠标经过一级菜单时,隐藏的二级菜单就会显示出来,这样即保证了页面的美观,同时又不会使页面的模块减少,甚至可以增加模块数目。

  一、废话不多说,下面我们来通过HTML+CSS为大家实现一下上面的效果,首先请大家先欣赏一下效果图:

  

 1、界面布局代码:

<body>     <div id="var">        <ul>            <li><a href="#">首页</a></li>            <li><a href="#">软件工程</a>                <ul>                    <li><a href="#">JAVA</a></li>                    <li><a href="#">NET</a></li>                </ul>            </li>            <li><a href="#">通信工程</a></li>            <li><a href="#">计算机管理</a>                <ul>                    <li><a href="#">JAVA</a></li>                    <li><a href="#">NET</a></li>                </ul>            </li>            <li><a href="#">物联网系</a></li>        </ul>    </div>      </body>

 2、css代码:

<style type="text/css">        *{padding: 0; margin: 0;}        #var{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; height: 40px;}        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; display: none;}        ul li ul li a:HOVER { background-color: #06f;}        ul li:hover ul{ display: block;}    </style>

  对于CSS代码都是最基本的,我想大家都能的看懂吧,可能有一些看上去有些吃力,下面我就带大家一起分析一下,这段代码:list-style:none;表示去掉样式,也就是去除每个li前的小黑点;对于a下的text-decoration: none;表示去除超链接下的下划线;a:hover表示鼠标经过超链接是的效果;display: block;表示把ul转化为块级元素。其他的都是一些常规属性,就不再赘述,只要理解了盒子模型的理念,这都不是事。

  二、html+css+javascript实现上述效果: 

 3、界面代码:

<body>    <div id="var">        <ul>            <li><a href="#">首页</a></li>            <li onmouseover="show(this)" onmouseout="quit(this)"><a href="#">软件工程</a>                <ul>                    <li><a href="#">JAVA</a></li>                    <li><a href="#">NET</a></li>                </ul>            </li>            <li><a href="#">物联网工程</a></li>            <li onmouseover="show(this)" onmouseout="quit(this)"><a href="#">信息管理</a>                <ul>                    <li ><a href="#">JAVA</a></li>                    <li><a href="#">NET</a></li>                </ul>            </li>            <li><a href="#">网络安全</a></li>            <li><a href="#">计算机科学与技术</a></li>        </ul>    </div>  </body>

 4、css代码:

<style type="text/css">        *{ margin: 0; padding: 0;}        #var{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; padding:0 10px; height: 40px; color:#000; display: block;}        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; display: none;}        ul li ul li a:HOVER{ background-color: #06f;}    </style>

 5、JavaScript实现上述效果:

    <script type="text/javascript">        function show(li){            var submenu = li.getElementsByTagName("ul")[0];            submenu.style.display="block";//鼠标经过时显示二级菜单        }        function quit(li){            var submenu = li.getElementsByTagName("ul")[0];            submenu.style.display="none";//鼠标离开时隐藏二级菜单        }    </script>

  三、变化菜单的实现,界面欣赏:

  

 6、界面代码:

<body>    <div id="var">        <ul>            <li><a id="a1" href="#">首页<span>index</span></a></li>            <li><a href="#">课程大厅<span>home</span></a></li>            <li><a href="#">学习中心<span>study</span></a></li>            <li><a href="#">关于我们<span>me</span></a></li>            <li><a href="#">论坛<span>say</span></a></li>        </ul>    </div>  </body>

 7、css代码:

  <style type="text/css">        *{ padding: 0px; margin: 0px;}        #var{ font-size: 12px; font-weight: bold; border-bottom: 8px solid #666; overflow: auto;}        #var li{ float: left; margin-left: 1px;  list-style: none;}        #var li a{ line-height: 20px; text-decoration: none; background-color: #ddd; color: #666; display: block; width: 80px; text-align: center;}        #var li a span{ display: none;}        #var li a:HOVER{ margin-top: -20px; background-color: #666; color: #fff;}        #var li a:HOVER span{ display: block;}    </style>

  讲到这里关于本篇的菜单栏设计,我相信大家都已经学会了,有没有感觉到CSS的强大,反正我算是服了,作为一个网站开发工程师,如果你说你不懂SCC估计有可能会被笑掉大牙。以上内容,如有异议,请留言。

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn