JSFiddle - React, Tailwind, and code Playground
by Weliton Figueiredo
HTML
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/css/bootstrap.min.css">
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.5/js/bootstrap.min.js"></script>
<link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/font-awesome/4.4.0/css/font-awesome.min.css">
<nav class="navbar navbar-default sidebar" role="navigation">
<div class="container-fluid">
<div class="navbar-header">
<button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-sidebar-navbar-collapse-1">
<span class="sr-only">Toggle navigation</span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
<span class="icon-bar"></span>
</button>
<a class="navbar-brand" href="#">Menu Vertical </a>
</div>
<div class="collapse navbar-collapse" id="bs-sidebar-navbar-collapse-1">
<ul class="nav navbar-nav"><li><a href="/">Inicial<span style="font-size:16px;" class="pull-right hidden-xs showopacity fa fa-home"></span></a></li><li><a href="/">Sobre<span style="font-size:16px;" class="pull-right hidden-xs showopacity fa fa-user"></span></a></li><li><a href="/">Cliente<span style="font-size:16px;" class="pull-right hidden-xs showopacity fa fa-users"></span></a></li><li><a href="/">Produto<span style="font-size:16px;" class="pull-right hidden-xs showopacity fa fa-tags"></span></a></li><li><a href="/">Pedidos<span style="font-size:16px;" class="pull-right hidden-xs showopacity fa fa-shopping-cart"></span></a></li><li><a href="/">Colaborador<span style="font-size:16px;" class="pull-right hidden-xs showopacity fa fa-user-secret"></span></a></li><li><a href="/">Relatórios<span style="font-size:16px;" class="pull-right hidden-xs showopacity fa fa-bar-chart"></span></a></li><li><a href="/">Gerencial<span style="font-size:16px;" class="pull-right hidden-xs showopacity fa...
CSS
nav.sidebar, .main{
-webkit-transition: margin 200ms ease-out;
-moz-transition: margin 200ms ease-out;
-o-transition: margin 200ms ease-out;
transition: margin 200ms ease-out;
}
.main{
padding: 10px 10px 0 10px;
}
@media (min-width: 765px) {
.main{
position: absolute;
width: calc(100% - 40px);
margin-left: 40px;
float: right;
}
nav.sidebar:hover + .main{
margin-left: 200px;
}
nav.sidebar.navbar.sidebar>.container .navbar-brand, .navbar>.container-fluid .navbar-brand {
margin-left: 0px;
}
nav.sidebar .navbar-brand, nav.sidebar .navbar-header{
text-align: center;
width: 100%;
margin-left: 0px;
}
nav.sidebar a{
padding-right: 13px;
}
nav.sidebar .navbar-nav > li:first-child{
border-top: 1px #e5e5e5 solid;
}
nav.sidebar .navbar-nav > li{
border-bottom: 1px #e5e5e5 solid;
}
nav.sidebar .navbar-nav .open .dropdown-menu {
position: static;
float: none;
width: auto;
margin-top: 0;
background-color: transparent;
border: 0;
-webkit-box-shadow: none;
box-shadow: none;
}
nav.sidebar .navbar-collapse, nav.sidebar .container-fluid{
padding: 0 0px 0 0px;
}
.navbar-inverse .navbar-nav .open .dropdown-menu>li>a {
color: #777;
}
nav.sidebar{
width: 200px;
height: 100%;
margin-left: -160px;
float: left;
...
JavaScript
$('input.sh').keyup(function(e){
/* Ignorar tecla tab */
var code = e.keyCode || e.which;
if (code == '9') return;
var $input = $(this),
inputContent = $input.val().toLowerCase(),
inpData = $input.data('search'),
$lista = $input.parents('.'+inpData),
ulLista = $lista.find('li').index( $input.parents('li') );
});