下拉及多级弹出菜单-Web标准(div+css)教程

敖游
2016-03-06
来源:遨游建站

  今天我们开始学习《十天学会web标准(div+css)》的下拉及多级弹出菜单,包含以下内容和知识点:

  一、带下拉子菜单的导航菜单

  二、绝对定位和浮动的区别和运用

  三、css自适应宽度滑动门菜单

  一、带下拉子菜单的导航菜单

  下拉菜单在一些企业网站应用尤为广泛,它存在使用方便,占用空间小等特点。之前纵向导航教程中已使用过二级导航,今天制作下横向导航菜单的二级菜单,方法和纵向一样,只不过由纵向改变为横向而已,下面我们以上一章第二节用图片美化的横向导航中的实例进行修改。

  


  先在html代码增加二级菜单的代码:

  <div id="menu">

  <ul>

  <li><a id="current" href="#">首页</a></li>

  <li><a href="#">网页版式</a>

  <ul>

  <li><a href="#">自适应宽度</a></li>

  <li><a href="#">固定宽度</a></li>

  </ul>

  </li>

  <li><a href="#">web教程</a>

  <ul>

  <li><a href="#">新手入门</a></li>

  <li><a href="#">视频教程</a></li>

  <li><a href="#">常见问题</a></li>

  </ul>

  </li>

  <li><a href="#">web实例</a></li>

  <li><a href="#">常用代码</a></li>

  </ul>

  </div>

  增加完代码后,在浏览器里预览一下:

  


  是不是一看头都大了,怎么变成这样了。别懵,我们分析一下错乱的原因。首先我们看下“自适应宽度”和“固定宽度”两个二级菜单也继承了一级菜单的背景和横向排列,所以我们先把二级菜单的背景和浮动清除掉,增加以下css代码:

  #menu ul li ul li { float:none;}

  #menu ul li ul li a { background:none;}

  现在预览看下,二级菜单是不是已经归位了,但鼠标划过时还继承了一级菜单的样式,所以也改为最终效果上的黑色背景白色文字,还有下拉菜单的灰色边框和灰色背景也一并加上,修改并增加如下代码:

  


  #menu ul li ul { border:1px solid #ccc;}

  #menu ul li ul li { float:none; width:85px; background:#eee; margin:0;}

  #menu ul li ul li a { background:none;}

  #menu ul li ul li a:hover { background:#333; color:#fff;}

  第一行设置二级菜单的灰色边框;为了美观,我们把下拉菜单的宽度设置成和一级菜单宽度相同,第二行的width:85px再加上第一行上设置的边框左右各1px后正好是87px,和一级菜单宽度相同。margin:0是为了清除掉继承一级菜单中margin-left:2px;最后一行设置鼠标划过时的样式。

  再预览一下,是不是基本的样式已实现了。

  

1  /  3
阅读245
分享
写评论...