当前位置:编程学习 > 网站相关 >>

网页菜单,让你的网站更具个性

  仿Windows下拉菜单,在网上是比较常见的,最初出现在微软网站上,之后被大量效仿。 事实上制作这样一个模拟菜单也并不是一件很困难的事,比如上面的例子代码如下:

  -------------------------------------------

  <!-- 样式部分 -->

  <style type=text/css>

  td,div { font: normal 12px 宋体; }

  a { color: #F8F8F8; text-decoration: none; }

  a:hover { color: #F8F8F8; text-decoration: underline; }

  </style>

  <!-- 实现部分 -->

  <div style="background-color:#3366CC;width:68px;text-align:center;

  padding:3px;border-bottom:1px solid #FFFFFF;z-index:1;"

  onmouseover="myMenu.style.display='block'"

  onmouseout="myMenu.style.display='none'">

   <div style="position:absolute;width:0px;height:0px;overflow:visible;">

   <div id=myMenu style="position:absolute;left:-10px;top:18px;display:none;

   width:90px;background-color:#3366CC;padding:5px;text-align:left;">

    <a href=http://www.zzzyk.com/htmldata/2005-06-18/1119051233.html#none>Link 1</a><br>

    <a href=http://www.zzzyk.com/htmldata/2005-06-18/1119051233.html#none>Link 2</a><br>

    <a href=http://www.zzzyk.com/htmldata/2005-06-18/1119051233.html#none>Link 3</a><br>

    <a>...</a><br>

    <a href=http://www.zzzyk.com/htmldata/2005-06-18/1119051233.html#none>Link N</a><br>

   </div>

   </div>

   <a href=http://www.zzzyk.com/htmldata/2005-06-18/1119051233.html#none>菜单实例</a>

  </div>

  -----------------------------------

  那么下面我们就由浅入深的对这种模拟菜单进行分析讲解。

  在讲解之前,有一点需要说明的是:笔者在后面讲解的代码都基于当前的主流浏览器Microsoft Internet Explorer(即我们通常所说的IE)下的。笔者进行调试的浏览器是IE 5.01。另外,这样一个菜单体现的是HTML/CSS/javascript的综合应用,这里并不对一些细节进行详细的讲解,所以你至少应该有一点这方面的基础。

  基本原理

  其实,这个菜单实现的原理简单的说就是:设置页面元素的CSS属性,对其进行定位并设置其是否可见,然后通过激发一定的事件,用javascript来动态的改变这些属性。

  看下面几个CSS属性:

  position:定位类型,取值static/absolute/relative,其代表的含义简单的说即无定位/绝对定位/相对定位;

  left:距离左侧的位置(具体的参照物与position的设置有关),单位为px或%;

  top:距离顶部的位置(具体的参照物与position的设置有关),单位为px或%。

  display:页面元素的显示状态,如取值block表示做为块状元素显示,none则为不显示,还有其他一些取值(如inline等)这里就不做详解。

  比如上例中的“div id=myMenu style="position:absolute;left:-10px;top:18px;display:none...”就是使用了这几个属性。

  下面我们来看看如何用javascript来控制页面元素的CSS属性。

<
补充:网页制作,设计基础 
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,