当前位置: 首页 > 图文教程 > 网页制作 > CSS样式表 > CSS+XHTML制作的简单网页下拉菜单

CSS样式表
CSS教程:闭合CSS浮动元素的几种方法
细说CSS3中的选择符
网页超级链接该以什么方式打开?
背投广告设计:用最少的时间来做最效率的事情
css中用javascript判断浏览器版本
css教程:经常保持CSS的整洁度和有序性
css教程:选择合适的、有意义的元素描述内容
CSS编写中灵活运行注释的意义
css教程:CSS文件应该保持整洁和统一
DIV CSS常用的网页布局代码
完全掌握纯CSS布局网页
serif和sans serif:西方国家的字母体系
基于XTHML标准的DIVCSS布局对SEO的影响
CSS合理的编码与组织技巧
网站变黑白灰色的4种代码详细讲解
css布局实例:网页布局的方法
YUI 中的 Grids CSS值得关注和学习的
CSS代码是否合理?是否优化?
css教程:网页中Span和Div的区别
div css网页适应不同分辨率技巧

CSS样式表 中的 CSS+XHTML制作的简单网页下拉菜单


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 109 ::
收藏到网摘: n/a

 CSS和JS一样深不可测,也许花十天时间就能学会,但如果想完全通透,或许要付出几百个十天.永远不要认为自己比别人聪明,自以为比别人懂的人其实什么都不懂.学无止尽,亘古不变.上下求索,孜孜不倦.自勉.

闲来无事,琢磨着写了个下拉菜单,纯CSS的.最初灵感来自于Discuz头部导航中的"我的"下拉效果.大致分析了一下,实现原理很简单,鼠标未触发事件时定义一个样式只显示父级菜单,而隐藏掉其子级菜单.再定义一个样式,赋于鼠标触发事件时.只要弄了这个原理,用纯CSS写出这个效果就不难了.

花了半小时,比较顺畅的写下来的,非常简约的效果.使用时加以美化就可以了.兼容FF,IE6以上,其他浏览器未测试.

先看效果:

 
[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

样式部分:

* {
    margin:0;
    padding:0;
}
body {
    font:12px Verdana, Geneva, sans-serif #444;
    line-height:1.5;
}
ul li {
    list-style:none;
}
.menu {
    width:660px;
    margin:20px auto;
}
.menu li {
    display:inline;
    float:left;
    margin:0 5px;
    background:#f2f2f2;
    border:1px #39c solid;
    text-align:center;
    font-size:14px;
    font-weight:700;
    line-height:30px;
    cursor:hand;    
}
.tuckUp {
    display:inline;
    width:120px;
    height:30px;
    overflow:hidden;
    background:#f2f2f2;
}
.pullDown{
    display:inline;
    height:auto;
}
.item a:link, .item a:visited {
    display:inline;
    float:left;
    width:110px;
    background:#ccc;
    text-align:center;
    color:#444;
    font-size:12px;
    font-weight:normal;
    text-decoration:none;
    line-height:25px;
    margin:0 5px 5px 5px;
}
.item a:hover {
    display:inline;
    float:left;
    background:#39c;
    width:100px;
    color:#FFF;
    text-decoration:none;
    text-align:center;
    font-size:12px;
    font-weight:700;
    font-weight:normal;
    line-height:25px;
    padding:0 0 0 10px;
    margin:0 5px 5px 5px;
}


HTML部分:

<ul class="menu">
  <li class="tuckUp" onmousemove="this.className='pullDown'" onmouseout="this.className='tuckUp'">MenuOne
    <div class="item"><a href="/">ITEM01</a></a><br />
      <a href="/">ITEM02</a></a><br />
      <a href="/">ITEM03</a><br />
      <a href="/">ITEM04</a><br />
      <a href="/">ITEM05</a><br />
      <a href="/">ITEM06</a><br /></div>
  </li>
  <li class="tuckUp" onmouseover="this.className='pUllDown'" onmouseout="this.className='tuckUp'">MenuTwo
    <div class="item"><a href="/">ITEM01</a><br />
      <a href="/">ITEM02</a><br />
      <a href="/">ITEM03</a><br />
      <a href="/">ITEM04</a><br /></div>
  </li>
  <li class="tuckUp" onmouseover="this.className='pullDown'" onmouseout="this.className='tuckUp'">MenuThree
    <div class="item" ><a href="/">ITEM01</a><br />
      <a href="/">ITEM02</a><br />
      <a href="/">ITEM03</a><br />
      <a href="/">ITEM04</a><br />
      <a href="/">ITEM05</a><br /></div>
  </li>
  <li class="tuckUp" onmouseover="this.className='pUllDown'" onmouseout="this.className='tuckUp'">MenuFour
    <div class="item"><a href="/">ITEM01</a><br />
      <a href="/">ITEM04</a><br />
      <a href="/">ITEM05</a><br /></div>
  </li>
  <li class="tuckUp" onmouseover="this.className='pUllDown'" onmouseout="this.className='tuckUp'">MenuFive
    <div class="item"><a href="/">ITEM01</a><br />
      <a href="/">ITEM02</a><br />
      <a href="/">ITEM03</a><br />
      <a href="/">ITEM04</a><br />
      <a href="/">ITEM05</a><br /></div>
  </li>
</ul>