导航菜单是每个网站所必备的功能,也是每个学习制作网站的朋友所必须接触的,如何用css样式制作一个简单漂亮的二级下拉菜单呢?

下面为大家分享一下我的经验

方法步骤:

第一步  :

首页我们打开Sublime Text或其它编辑器,创建一个名为nav的导航菜单

<div class="nav">

<ul>

<li><a href="#">栏目一</a></li>

<li><a href="#">栏目二</a></li>

<li><a href="#">栏目三</a></li>

<li><a href="#">栏目四</a></li>

<li><a href="#">栏目五</a></li>

</ul>

</div>

如下图所示:

第二步:

现在我们为nav添加样式,首先去掉默认的margin和padding,

再去掉<ul>< li>标签的list-style样式和<a>标签的默认下划线。

接下来再添加适当的样式(根据实际需要添加)进行美化,如一下样式:

页面预览效果如图所示:

第三步: 

像这样,一个菜单横向菜单就建好了,下面我们给栏目一,栏目二,栏目三,添加二级下拉菜单

代码如下:

<div class="nav">
    <ul>
      <li><a href="#">栏目一</a>
       <ul>
              <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
          </ul>
      </li>
      <li><a href="#">栏目二</a>
        <ul>
              <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
          </ul>
      </li>
      <li><a href="#">栏目三</a>
       <ul>
           <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
              <li><a href="#">二级栏目</a></li>
          </ul>
      </li>
      <li><a href="#">栏目四</a></li>
      <li><a href="#">栏目五</a></li>
    </ul>
 </div>

第四步: 

添加完二级栏目后,现在我们开始添加css样式,

首先给<li>标签下的<ul>标签添加相对定位,

再去除之下<li>标签的做浮动样式,再适当修改<a>标签,如一下样式:

代码如下:

.nav ul li ul {

  position:absolute;

}

.nav ul li ul li {

  float:none;

}

.nav ul li ul li a {

  border-right:none;

  border-top:1px dotted #ccc;

  background:#f5f5f5;

}

页面刷新效果如图:

第五步: 

接下来我们隐藏掉二级下来菜单,并给它添加鼠标滑动效果,使得当鼠标滑动到主栏目时,二级下来菜单显示,样式如下:

.nav ul li ul {

  position:absolute;

  display:none;

}

.nav ul li ul li {

  float:none;

}

.nav ul li ul li a {

  border-right:none;

  border-top:1px dotted #ccc;

  background:#f5f5f5;

}

.nav ul li:hover ul{

  display:block;

}

再次预览效果,如下图所示:

第六步: 

至此,横向二级下拉菜单就制作完成了,这里附加上全部代码,以方便各位朋友参考,感谢各位朋友的浏览。

何使用CSS写出一个下拉菜单。的更多相关文章

  1. 怎样用css写出一个下拉菜单

    <style> 2 /* css*/ 3 #body{ 4 float: left; 5 } 6 #xialakuang{ 7 background-color:#f9f9f9; 8 bo ...

  2. 一个用css写出来的下拉菜单

    1 <style> 2 /* css*/ 3 #body{ 4 float: left; 5 } 6 #xialakuang{ 7 background-color:#f9f9f9; 8 ...

  3. 纯CSS实现二级导航下拉菜单--css的简单应用

    思想:使用css的display属性控制二级下拉菜单的显示与否.当鼠标移动到一级导航菜单的li标签时,显示二级导航菜单的ul标签.由于实现起来比较简单,所以在这里直接给出了参考代码. 1.纯CSS二级 ...

  4. CSS技巧分享:如何用css制作横排二级下拉菜单

    原文:CSS技巧分享:如何用css制作横排二级下拉菜单 导航菜单是每个网站所必备的功能,也是每个学习制作网站的朋友所必须接触的,如何用css样式制作一个简单漂亮的二级下拉菜单呢,下来小编就一步一步教大 ...

  5. css用hover制作下拉菜单

    首先我们的需求就是 制作一个鼠标移动到某个区域就会有下拉菜单的弹出,这样会有更多的子类内容,示例代码如下: <!DOCTYPE html> <html lang="en&q ...

  6. swift 第九课 用tableview 做一个下拉菜单Menu

    写到这里的时候,自己这个项目已经完成了一半左右,项目进度自己还是挺满意.今天又有一个新的布局,要实现个下拉菜单,刚开始写的时候,觉得会很容易,后来发现也是小错不断, 我想自己限制的自己属于写博客的初期 ...

  7. Css之导航栏下拉菜单

    Css: /*下拉菜单学习-2017.12.17 20:17 added by ldb*/ ul{ list-style-type:none; margin:; padding:; overflow: ...

  8. 纯css和js版下拉菜单

    <!doctype html> <html> <head> <meta charset="utf-8"> <title> ...

  9. css实现hover显示下拉菜单

    原理比较简单,首先先隐藏下拉菜单即display:none,当鼠标hover后,设置display:block. <style> .menu-title { postion: relati ...

随机推荐

  1. [Android4.4.3] Nubia Z5S Mokee4.4.3 RC2.0 by syhost

    这个ROM先前在Mokee官网公布过,但一些人測试bug不少,因此已经撤下, 但又有人反馈跟之前RC1.0版的bug差点儿相同, 所以再次在网盘单独公布, 截图以及注意事项见之前的RC1.0的帖子, ...

  2. setSingleChoiceItems和setPositiveButton两者触发时期

    两者都是对话框中的操作当中 setSingleChoiceItems是在点击对话框中的列表时候被触发,当点击后运行实现的内容 setPositiveButton是在点击完对话框中的确定button时被 ...

  3. Lazy方式单列模式,一种线程安全模式的新选择

      public class WeProxyClient {         private static readonly Lazy<WeProxyClient> list = new ...

  4. wpf msdn在线地址http://msdn.microsoft.com/zh-cn/library/ms752324(v=vs.110).aspx

    http://msdn.microsoft.com/zh-cn/library/ms752324(v=vs.110).aspx

  5. Android项目实战-云词典

    前段时间在网上看到滴答滴答的一个项目,字典文章,找到一个简单的字.整句翻译功能,词汇,但漫长的岁月项目,二手API数据不再可用,我决定使用其现有的框架来实现其功能,主要采用的技术GSON和Volley ...

  6. 【快速选择算法与nth_element函数】【续UVA11300 】

    在白书中提到了一种O(n)级别的寻找中位数算法 就是我们今天要介绍的主角 快速选择算法 类似快排 选择一个比较元素 进行递归处理寻找第k大元素 假设最后比较元素到了i 以下描述是我写快排的常用字符 所 ...

  7. CentOS 7.0 systemd代替service

    CentOS 7.0中一个最主要的改变,就是切换到了systemd.它用于替代红帽企业版Linux前任版本中的SysV和Upstart,对系统和服务进行管理.systemd兼容SysV和Linux标准 ...

  8. stagefright框架(七)-Audio和Video的同步

    讲完了audio和video的处理流程,接下来要看的是audio和video同步化(synchronization)的问题.OpenCORE的做法是设置一个主clock,而audio和video就分别 ...

  9. .Net+MySQL

    网上很少用.Net+MySQL的组合的,所以资料比较少,发现一个赶紧分享给大家. 通常数据库连接字符串为:Database=dbname;Data Source=192.168.1.1;Port=33 ...

  10. cookie 和 session 基本使用 以及 封装

    Cookie: 是一小段文本信息,用户请求页面的时候,在浏览器和服务器之间传递.用户每次访问的时候都会记录cookie,cookie里可以包含用户信息,浏览的历史记录等等:Cookie是由服务器端生成 ...