您的位置:软件 > 设计在线 > 网页陶吧 > 技术平台 > 技巧点滴 > 正文
网页菜单详解(1):基本原理
[文章信息]
作者:钟钟
时间:2003-03-03
出处:天极设计在线
责任编辑:Shiny
[文章导读]
类似这样的仿Windows下拉菜单,在网上是比较常见的,事实上制作这样一个模拟菜单也并不是一件很困难的事
advertisement
热点推荐
· 11.15软件精选 制作MSI文件
· 闪客五周年之闪客光荣榜
· 用Winamp“品尝”无限音乐
· 网络加、解密的技术应用
· 闪客五周年之闪客光荣榜:zoron
[正文]
  首先看这下面的例子(鼠标移上去):


  类似这样的仿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;"> &nbsp;<a href=#none>Link 1</a><br> &nbsp;<a href=#none>Link 2</a><br> &nbsp;<a href=#none>Link 3</a><br> &nbsp;<a>...</a><br> &nbsp;<a href=#none>Link N</a><br> </div> </div> <a href=#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属性。

  对HTML有一定了解的朋友一定清楚,几乎所有的标记都有一个style属性,通过设置这个属性来设置该标记的CSS属性(即CSS的内联用法)。在JavaScript中,每一个标记都被视为Document对象的一个子对象,而该标记的每一个HTML属性也都是这个对象的属性或子对象,style就是其中一个,通过用JavaScript控制style的属性,就达到了动态改变页面元素CSS属性的目的。如上例中的“onmouseover="myMenu.style.display='block'"”就是一个很普通的用法,其中myMenu即我们所看到的“菜单”的ID,它原来的display为none,即不显示,当鼠标移上去时,变为block,即块状显示。

  另外要提的是:前面只说了如何实现定位、如何动态控制,那么定位的、控制的是什么元素呢?原则上来讲,大部分块状元素(如div、table)都可以,而在IE中,div标记(注意,在一些非IE浏览器中,并不支持div标记)因其使用的灵活性和方便性而做为我们的首选。上例使用的就是div标记。

  好啦,基本的过程,上面大致已经说完了,在下一章,我们将看到使用上面提到的技术来实现一个简单的菜单。  

·"WAP天极之IT新闻资讯,50万元等你拿"    ·天极WAP之游戏狂图,50万元等你下载


发表评论推荐给朋友我想参加相关培训打印我对此感兴趣订阅电子杂志
相关内容阅读排行榜
  • 11.15软件精选 制作MSI文件
  • 闪客五周年之闪客光荣榜
  • 兰欣推出我国第一款网络游戏专用音箱
  • 玩家发现117亡灵种族Bug
  • [配置推荐]极品HIFI配置
  • 东瀛美少女COSPLAY(55)
  • 用Winamp“品尝”无限音乐
  • 迷你型PStwo全面透析专题
  • Advertisement

    天极无线
    待机彩图    >>更多
    多彩动画    >>更多
    美妙和弦    >>更多
    天使在唱歌
    壁虎漫步
    PrettyBoy
    LoveLoveLove
    我是你的小小狗
    单身情歌
    十面埋伏
    祝酒歌
    回心转意
    波斯猫
    太委屈
    S.H.E
    潘玮柏
    M2M
    蔡依林
    阿牛
    林志炫
    陈弈迅
    刀郎
    黑龙
    S.H.E
    陶晶莹
    情人玫瑰坊
    音乐风云
    新片速递
    神秘测试
    都市约会
    ·天极彩信天天精彩
    ·图铃梦工厂下载无限!
    ·找寻童真,卡通专题
    ·夏日激情交友社区!
    ·星座运程,预测人生

    CSEEK搜索