零. 写在前面

作者最近在一个小项目中需要写后台管理界面,在互联网上绕了一圈,最后决定使用Bootstrap+metisMenu来完成。理由1:Bootstrap是目前流行的前端框架,风格简约,简单易用。理由2:metisMenu是轻量级的导航栏jQuery插件,同样简约,使用方便,易上手。

一. 什么是metisMenu?

今天的文章是介绍如何使用Bootstrap+metisMenu来完成一个简单的后台管理界面,Bootstrap前面的文章已经介绍过,如果你还不是很了解Bootstrap,那么可以翻阅作者前面的文章【Web前端框架学习—Bootstrap】 。 
metisMenu是一个jQuery的导航栏插件,使用该插件将节省我们的开发时间,提高开发效率。 
今天,作者将以后台管理系统为案例,介绍metisMenu的使用,效果图预览: 

二. 准备工作

需要使用的文件:

  • bootstrap.min.js
  • bootstrap.min.css
  • metisMenu.min.js
  • metisMenu.min.css

如果你还没有这些文件,那么,你可以点击这里下载它们。

三. 开始

你可以使用本地文件引入css和js,也可以使用CDN资源从云端引入。如果你想从云端引入,可以使用又拍云的CDN加速资源库:http://www.bootcdn.cn/metisMenu

3.1 css文件引入

在< head >标签中引入css文件,包括Bootstrap的css文件和metisMenu的css文件。

    <link href="css/bootstrap.min.css" rel="stylesheet">
<link href="css/metisMenu.min.css" rel="stylesheet">
<link href="css/sb-admin-2.min.css" rel="stylesheet">
<link href="css/font-awesome.min.css" rel="stylesheet">
  • 1
  • 2
  • 3
  • 4

3.2 js文件引入

建议在< body >标签中< /body >标签之前引入js文件。

<script src="jquery/jquery.min.js"></script>
<script src="js/bootstrap.min.js"></script>
<script src="js/metisMenu.min.js"></script>
<script src="js/sb-admin-2.min.js"></script>
  • 1
  • 2
  • 3
  • 4

3.3 侧边导航栏主体

这里,我们先使用metisMenu完成一个默认样式的侧边导航栏。 
页面中的图标并没有使用Bootstrap提供的字体库,而是使用的有更多图标的开源字体库fontawesome。如果你想了解fontawesome,可以前往fontawesome中文网

<nav class="navbar navbar-default navbar-static-top" role="navigation" style="margin-bottom: 0">
<div class="navbar-header">
<a class="navbar-brand" href="/pages/back/index.jsp"><i class="fa fa-graduation-cap fa-fw" aria-hidden="true" ></i>学生信息管理系统</a>
</div>
<ul class="nav navbar-top-links navbar-right">
<li class="dropdown"><a class="dropdown-toggle" data-toggle="dropdown" href="#"> <i
class="fa fa-user fa-fw"></i> <i class="fa fa-caret-down"></i> </a>
<ul class="dropdown-menu dropdown-user">
<li><a href="#"><i class="fa fa-user fa-fw"></i> 用户信息</a></li>
<li><a href="#"><i class="fa fa-gear fa-fw"></i> 设置中心</a></li>
<li class="divider"></li>
<li><a href="login.jsp"><i class="fa fa-sign-out fa-fw"></i> 登出系统</a></li>
</ul>
</li>
</ul>
<div class="navbar-default sidebar" role="navigation">
<div class="sidebar-nav navbar-collapse">
<ul class="nav" id="side-menu">
<li><a href="/pages/back/index.jsp"><i class="fa fa-dashboard fa-fw"></i>系统首页</a></li>
<li><a href="#"><i class="fa fa-bar-chart-o fa-fw"></i> 班级管理<span class="fa arrow"></span></a>
<ul class="nav nav-second-level">
<li><a href="/pages/back/classes/classes_insert.jsp">增加班级</a></li>
<li><a href="/pages/back/classes/classes_list.action">班级列表</a></li>
</ul>
</li>
<li><a href="#"><i class="fa fa-edit fa-fw"></i> 学生管理<span class="fa arrow"></span></a>
<ul class="nav nav-second-level">
<li><a href="panels-wells.html">增加学生</a></li>
<li><a href="buttons.html">学生列表</a></li>
</ul>
</li>
<li>
<a href="#"><i class="fa fa-question-circle-o fa-fw" aria-hidden="true"></i>关于系统</a>
</li>
</ul>
</div>
</div>
</nav>
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15
  • 16
  • 17
  • 18
  • 19
  • 20
  • 21
  • 22
  • 23
  • 24
  • 25
  • 26
  • 27
  • 28
  • 29
  • 30
  • 31
  • 32
  • 33
  • 34
  • 35
  • 36
  • 37
  • 38

3.4 侧边导航栏个性化微调

如果你觉得默认样式的侧边导航栏不好看,那么,可以自己写css,对其进行微调美化。 
作者觉得默认的侧边导航栏文字太靠左了,想把导航栏文字居中些,于是做出如下修改。

index.html

<link href="css/style.css" rel="stylesheet">
  • 1

style.css

/*header*/
.navbar-header i{
padding-left: 1.5em;
padding-right: 2em;
}
.sidebar ul li i{
padding-left: 2em;
padding-right: 2em;
}
.sidebar ul li ul li {
padding-left: 2.5em
}
.panel-default{
margin-top: 20px;
}
  • 1
  • 2
  • 3
  • 4
  • 5
  • 6
  • 7
  • 8
  • 9
  • 10
  • 11
  • 12
  • 13
  • 14
  • 15

在index.html中引入style.css后,效果如下图所示: 

至此,已经完成了使用metisMenu完成后台管理界面侧边导航栏的制作和个性化微调。

四. 参考资料

    1. 读源码 | metisMenu侧边栏插件
    2. metisMenu在GitHub的项目托管

使用Bootstrap+metisMenu完成简单的后台管理界面的更多相关文章

  1. vue2.0+element+node+webpack搭建的一个简单的后台管理界面

    闲聊: 今天是六一儿童节哟,小颖祝大家节日快乐哈哈哈.其实这个demo小颖断断续续做了将近两个礼拜了,心塞的,其实这个也没有多难,主要是小颖有点最近事情有点多,所以就把这个一直拖着,今天好不容易做好了 ...

  2. Asp.NetMVC利用LigerUI搭建一个简单的后台管理详解(函登录验证)

    上一篇 Asp.Net 中Grid详解两种方法使用LigerUI加载数据库数据填充数据分页  了解了LigerUI 中Grid的基本用法  现在结合上一篇的内容做一个简单的后台管理,当然也有前台的页面 ...

  3. Koa2+MySQL+VUE+ElementIUI搭建简单的后台管理小系统

    如题,前端入坑许久,还是写个小东西出来吧 想要搭建自己的一个后台管理,实现简单的增删改查,看起来很简单 其实是真的简单,没有想的那么难,我也就写了一个月吧, 当然是假的,其实也就每天一两个小时,花了大 ...

  4. 基于bootstrap的漂亮网站后台管理界面框架汇总

    基于bootstrap的漂亮网站后台管理界面框架汇总 10个最新的 Bootstrap 3 管理模板 这里分享的 10 个模板是从最新的 Bootstrap 3 管理模板集合中挑选出来的,可以帮助你用 ...

  5. Django后台管理界面

    之前的几篇记录了模板视图.模型等页面展示的相关内容,这篇主要写一下后台admin管理界面的内容. 激活管理界面 Django管理站点完全是可选择的,之前我们是把这些功能给屏蔽掉了.记得上篇中Djang ...

  6. 使用vuejs2.0和element-ui 搭建的一个后台管理界面

    说明: 这是一个用vuejs2.0和element-ui搭建的后台管理界面. 相关技术: vuejs2.0:一套构建用户界面的渐进式JavaScript框架,易用.灵活.高效. element-ui: ...

  7. 【低码】asp.net core 实体类可生产 CRUD 后台管理界面

    前言介绍 喜欢小规模团队的"单打独斗",有的时候即使在大公司,也经常做着3-5个人团队的小项目,相信很多人有类似的经历. 本文介绍如何将项目中已存在的[实体类],直接生产出 CRUD 后台管理界面. ...

  8. vuejs 和 element 搭建的一个后台管理界面

    介绍: 这是一个用vuejs2.0和element搭建的后台管理界面. 相关技术: vuejs2.0:渐进式JavaScript框架,易用.灵活.高效,似乎任何规模的应用都适用. element:基于 ...

  9. 使用django的admin的后台管理界面

    django的admin后台管理界面是方便我们对数据库操作的  是一个在浏览器显示的  图形化界面数据库操作 我们先在django中的admin中把我们需要在图形化界面中进行操作的表导入进去: 先把m ...

随机推荐

  1. JavaScript 中的异常处理

    考虑到 JS 中的错误可比服务器端的代码产生的错误要多得多,并且还难以发现及修正,所以 JS 代码必须有异常处理以及全局一场处理. try { //这段代码从上往下运行,其中任何一个语句抛出异常该代码 ...

  2. C#中转义字符[转]

    https://www.cnblogs.com/muran/p/3174865.html 编程中很多细节问题我们都要十分的注意,要不一个小小的字母错误就能引起程序的无法运行. C#中转义字符分2中,一 ...

  3. 升级项目到Vs2010,编译时出现:MSB6006: “LC.exe”已退出,解决方法

    最近装了Vs2010 准备把一些项目,升级到.Net 4.0 在编译时,总是出现 MSB6006: “LC.exe”已退出 的错误.很是郁闷.刚开始以为是第三方控件的,去掉了,也不行.后来在网上找了一 ...

  4. Convert Sorted List to Binary Search Tree leetcode java

    题目: Given a singly linked list where elements are sorted in ascending order, convert it to a height ...

  5. 用jstl标签判断一个字符串是否包含了另一个字符串

    <c:if test="${fn:contains(str1,str2)}">

  6. MFC路径层的使用(BeginPath和EndPath函数)

    响应WM_PAINT消息的代码如下: void CTextView::OnDraw(CDC* pDC) { CTextDoc* pDoc = GetDocument(); ASSERT_VALID(p ...

  7. 使用unbound在RHEL7上搭建DNS服务

    1.概念:DNS (Domain Name Server)域名解析服务,使用TCP&UDP的53号端口(主从DNS之间用TCP,客户端查询使用UDP).它可以完成域名与IP地址的互换,可以通过 ...

  8. 转: wireshark过滤语法总结

    from: http://blog.csdn.net/cumirror/article/details/7054496 wireshark过滤语法总结 原创 2011年12月09日 22:38:50 ...

  9. 网站运维之JAVA-SSH框架数据同步问题

    一.环境 SSH环境,查询用的是基于Hibernate的配置文件构建了一个SessionFactory,主要代码如下 public class HibernateUtil { private stat ...

  10. jQuery 图片裁剪插件 Jcrop

    Jcrop是一个jQuery图片裁剪插件,它能为你的WEB应用程序快速简单地提供图片裁剪的功能.特点如下: 对所有图片均unobtrusively(无侵入的,保持DOM简洁) 支持宽高比例锁定 支持 ...