Bootstrap vertical nav
by Marie Gérard
HTML
<link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.3.1/css/bootstrap.min.css">
<script src="//code.jquery.com/jquery-3.3.1.slim.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/4.3.1/js/bootstrap.bundle.min.js"></script>
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/font-awesome/4.7.0/css/font-awesome.min.css">
<!-- Demo header-->
<section class="py-5 header">
<div class="container py-4">
<div class="row">
<div class="col-md-3">
<!-- Tabs nav -->
<div class="nav flex-column nav-pills nav-pills-custom" id="v-pills-tab" role="tablist" aria-orientation="vertical">
<a class="nav-link mb-3 p-3 shadow active" id="v-pills-home-tab" data-toggle="pill" href="#v-pills-home" role="tab" aria-controls="v-pills-home" aria-selected="true">
<i class="fa fa-user-circle-o mr-2"></i>
<span class="font-weight-bold small text-uppercase">Personal information</span></a>
<a class="nav-link mb-3 p-3 shadow" id="v-pills-profile-tab" data-toggle="pill" href="#v-pills-profile" role="tab" aria-controls="v-pills-profile" aria-selected="false">
<i class="fa fa-calendar-minus-o mr-2"></i>
<span class="font-weight-bold small text-uppercase">Bookings</span></a>
</div>
</div>
<div class="col-md-9">
<!-- Tabs content -->
<div class="tab-content" id="v-pills-tabContent">
<div class="tab-pane fade shadow rounded bg-white show active p-5" id="v-pills-home" role="tabpanel" aria-labelledby="v-pills-home-tab">
<h4 class="font-italic mb-4">Personal information</h4>
<p class="font-italic text-muted mb-2">Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor...
CSS
/*
*
* ==========================================
* CUSTOM UTIL CLASSES
* ==========================================
*/
.nav-pills-custom .nav-link {
color: #aaa;
background: #fff;
position: relative;
}
.nav-pills-custom .nav-link.active {
color: #45b649;
background: #fff;
}
/* Add indicator arrow for the active tab */
@media (min-width: 992px) {
.nav-pills-custom .nav-link::before {
content: '';
display: block;
border-top: 8px solid transparent;
border-left: 10px solid #fff;
border-bottom: 8px solid transparent;
position: absolute;
top: 50%;
right: -10px;
transform: translateY(-50%);
opacity: 0;
}
}
.nav-pills-custom .nav-link.active::before {
opacity: 1;
}
/*
*
* ==========================================
* FOR DEMO PURPOSE
* ==========================================
*/
body {
min-height: 100vh;
background: linear-gradient(to left, #dce35b, #45b649);
}