<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Test</title>
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<link rel="stylesheet" href="./css/reset.css">
<script src="http://apps.bdimg.com/libs/jquery/2.1.4/jquery.min.js"></script>
<style>
* {
box-sizing: border-box;
padding: 0;
margin: 0;
}
div {
line-height: 1;
} .navbar {
min-height: 50px;
border: 2px solid transparent;
}
.navbar:after, .nav:after {
content: '';
display: block;
visibility: hidden;
clear: both;
}
.navbar-default {
background: #f9f9f9;
border-color: #e7e7e7;
}
.navbar-header {
line-height: .4;
}
.nav {
list-style: none;
}
.nav > li > a, .navbar-header > a {
display: block;
padding: 10px 15px;
}
.caret {
display: inline-block;
margin: 5px;
border-right: 4px solid transparent;
border-left: 4px solid transparent;
border-top: 4px dashed;
}
@media (min-width: 768px) {
.navbar-header, .navbar-nav, .navbar-nav > li {
float: left;
}
.navbar-nav > li > a, .navbar-header > a {
padding: 15px;
}
} .dropdown {
position: relative;
}
.dropdown-menu {
display: none;
position: absolute;
top: 100%;
left: 0;
z-index: 100;
border: 1px solid #ddd;
border-radius: 4px;
min-width: 100%;
padding: 3px 0;
}
@keyframes fade {
0% {
transform: translate3d(-100%,0,0);
opacity: 0;
}
100% {
transform: translate3d(0,0,0);
opacity: 1;
}
}
.open > .dropdown-menu {
display: block;
}
ul {
list-style: none;
}
.dropdown-menu a {
display: block;
padding: 5px 20px;
min-width: 100px;
white-space: nowrap;
}
@media (max-width: 768px) {
.dropdown-menu {
position: static;
border: none;
}
}
@media (min-width: 768px) {
.dropdown-menu .dropdown-menu {
position: absolute;
top: 0;
left: 100%;
}
.dropdown-menu {
animation: fade .3s ease-in alternate forwards;
transition: all .2s;
}
} </style>
</head>
<body>
<div class="navbar navbar-default" role="navigation">
 <div class="navbar-header">
  <a href="##" class="navbar-brand">慕课网</a>
 </div>
<ul class="nav navbar-nav">
<li class="active"><a href="##">网站首页</a></li>
<li class="dropdown">
<a href="##" data-toggle="dropdown" class="dropdown-toggle">系列教程<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="##">CSS3</a></li>
<li class="dropdown">
<a href="##" class="dropdown-toggle">JavaScript<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="##">名师介绍</a></li>
<li class="dropdown">
<a href="##" class="dropdown-toggle">成功案例<span class="caret"></span></a>
<ul class="dropdown-menu">
<li><a href="##">CSS3</a></li>
<li><a href="##">JavaScript</a></li>
<li class="disabled"><a href="##">PHP</a></li>
</ul>
</li>
<li><a href="##">关于我们</a></li>
</ul>
</li>
<li class="disabled"><a href="##">PHP</a></li>
</ul>
</li>
<li><a href="##">名师介绍</a></li>
<li><a href="##">成功案例</a></li>
<li><a href="##">关于我们</a></li>
</ul>
</div>
<script>
$('.dropdown-toggle').click(function(e) {
e.stopPropagation();
$(this).parent().toggleClass('open');
})
$(document).click(function() {
$('.dropdown').removeClass('open');
})
</script>
</body>
</html>

  

实现一个类似bootstrap的多级下拉菜单的更多相关文章

  1. bootstrap多级下拉菜单

    只需为下拉菜单的任意 <li> 元素添加 .dropdown-submenu 的类,并在该 <li> 元素下添加 .dropdown-menu 类的列表,就可以为该菜单项添加一 ...

  2. Bootstrap系列 -- 24. 下拉菜单基本用法

    在使用Bootstrap框架的下拉菜单时,必须调用Bootstrap框架提供的bootstrap.js文件.当然,如果你使用的是未编译版本,在js文件夹下你能找到一个名为“dropdown.js”的文 ...

  3. 基于jQuery带图标的多级下拉菜单

    之前为大家分享了很多导航菜单.今天我们要来分享一款很不错的jQuery左侧带小图标的多级下拉菜单,菜单是垂直的,每一个菜单项带有一个小图标,看起来非常专业.并且菜单支持无限极下拉,所以对各位Web开发 ...

  4. 一款多浏览器兼容的javascript多级下拉菜单

    这个多级下拉菜单的脚本大小不到2K,带有动画效果,可以方便地支持多个实例,并且能良好兼容WordPress系统wp_list_cats和wp_list_pages生成的多级列表.要初始化一个菜单,只需 ...

  5. jquery实现多级下拉菜单

    支持多种浏览器,体验效果:http://keleyi.com/keleyi/phtml/jqmenu/4.htm 多级菜单,理论上支持无限多的层级,文件结构非常简单的,以下是完整代码: <!DO ...

  6. 实现bootstrap的dropdown-menu(下拉菜单)点击后不关闭的方法 (转)

    实现bootstrap的dropdown-menu(下拉菜单)点击后不关闭的方法 问题描述,在下拉菜单中,添加其他元素,例如,原文作者所述的<a>和我自己实际用到的<input> ...

  7. 小程序多级下拉菜单demo

    小程序多级下拉菜单demo - CSDN博客 https://blog.csdn.net/github_39371177/article/details/80251211

  8. 【Bootstrap】 bootstrap-select2下拉菜单插件

    这次开发了个小TRS系统,虽然是很小,但是作为初心者,第一次用到了很多看起来洋气使用起来有相对简单的各种前端(主要是和bootstrap配合使用)组件.包括bootstrap-select2,boot ...

  9. Bootstrap系列 -- 27. 下拉菜单对齐方式

    Bootstrap框架中下拉菜单默认是左对齐,如果你想让下拉菜单相对于父容器右对齐时,可以在“dropdown-menu”上添加一个“pull-right”或者“dropdown-menu-right ...

随机推荐

  1. css中的块级和内联元素

    块级元素: 首先说明display是块级元素,会单独站一行,如 代码: <!DOCTYPE html> <html> <head lang="en"& ...

  2. java基础知识学习 java异常

    1: Unchecked Exception( 也就是运行时异常) VS  Check Exception(非运行时异常) 2: 运行期异常  VS  非运行期异常? 非运行时异常: 必须在代码中显示 ...

  3. STL string大小写 转换

    std::string data = "This is a sample string."; // convert string to upper case std::for_ea ...

  4. 问题:Oracle long 类型l;结果:oracle里long类型的总结

    oracle里long类型的总结 1.LONG 数据类型中存储的是可变长字符串,最大长度限制是2GB. 2.对于超出一定长度的文本,基本只能用LONG类型来存储,数据字典中很多对象的定义就是用LONG ...

  5. HTML5-A*寻路算法2

    设置起点 设置终点 设置障碍 清除障碍 允许斜向跨越

  6. HTML基础:

    HTML是英文HyperText Markup Language的缩写,即超级文本标记语言,是用于描述网页文档的一种标记语言.HTMl是目前网络上应用最为广泛的语言,也是构成网页文档的主要语言.HTM ...

  7. CF1042E Vasya and Magic Matrix

    感觉不会期望. 首先把所有格子按照权值从小到大排一下序,这样一共有$n * m$个元素,每个元素有三个属性$x, y, val$. 下文中的下标均为排序后的下标. 这样子我们就可以推出公式: $f_i ...

  8. angular使用base64的encode和decode

    var app = angular.module("encodeDecode", []); app.controller("encodeDecodeCtrl", ...

  9. .Net Core 扩展使用Refit

    .Net Core 扩展使用Refit 标签(空格分隔): 未分类 在.net core 2.1当中,目前可以是用HttpClientFactory进行Http的调用,它的使用方法我不再多说,具体参见 ...

  10. superset 错误解决

    访问superset localhost:8088   securety->list Role 报错 xxxxxxxxxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxx ...