"Form wizard (using tabs)"
Bootstrap 3.3.0 Snippet by tbogard

<link href="//maxcdn.bootstrapcdn.com/bootstrap/3.3.0/css/bootstrap.min.css" rel="stylesheet" id="bootstrap-css"> <script src="//maxcdn.bootstrapcdn.com/bootstrap/3.3.0/js/bootstrap.min.js"></script> <script src="//code.jquery.com/jquery-1.11.1.min.js"></script> <!------ Include the above in your HEAD tag ----------> <div class="container"> <div class="row"> <section> <div class="wizard"> <div class="wizard-inner"> <div class="connecting-line"></div> <ul class="nav nav-tabs" role="tablist"> <li role="presentation" class="active up"> <div class="vdivision"></div> <a href="#step1" data-toggle="tab" aria-controls="step1" role="tab" title="Step 1"> <span class="round-tab"> <i class="glyphicon glyphicon-folder-open"></i> </span> </a> </li> <li role="presentation" class="disabled up"> <div class="vdivision"></div> <a href="#step2" data-toggle="tab" aria-controls="step2" role="tab" title="Step 2"> <span class="round-tab"> <i class="glyphicon glyphicon-pencil"></i> </span> </a> </li> <li role="presentation" class="disabled down"> <div class="vdivision"></div> <a href="#step3" data-toggle="tab" aria-controls="step3" role="tab" title="Step 3"> <span class="round-tab"> <i class="glyphicon glyphicon-picture"></i> </span> </a> </li> <li role="presentation" class="disabled up"> <div class="vdivision"></div> <a href="#complete" data-toggle="tab" aria-controls="complete" role="tab" title="Complete"> <span class="round-tab"> <i class="glyphicon glyphicon-ok"></i> </span> </a> </li> </ul> </div> <form role="form"> <div class="tab-content"> <div class="tab-pane active" role="tabpanel" id="step1"> <h3>Step 1</h3> <p>This is step 1</p> <ul class="list-inline pull-right"> <li><button type="button" class="btn btn-primary next-step">Save and continue</button></li> </ul> </div> <div class="tab-pane" role="tabpanel" id="step2"> <h3>Step 2</h3> <p>This is step 2</p> <ul class="list-inline pull-right"> <li><button type="button" class="btn btn-default prev-step">Previous</button></li> <li><button type="button" class="btn btn-primary next-step">Save and continue</button></li> </ul> </div> <div class="tab-pane" role="tabpanel" id="step3"> <h3>Step 3</h3> <p>This is step 3</p> <ul class="list-inline pull-right"> <li><button type="button" class="btn btn-default prev-step">Previous</button></li> <li><button type="button" class="btn btn-default next-step">Skip</button></li> <li><button type="button" class="btn btn-primary btn-info-full next-step">Save and continue</button></li> </ul> </div> <div class="tab-pane" role="tabpanel" id="complete"> <h3>Complete</h3> <p>You have successfully completed all steps.</p> </div> <div class="clearfix"></div> </div> </form> </div> </section> </div> </div>
@import url(https://fonts.googleapis.com/css?family=Lato:400,100,300,700); body { background-color: #ddd; } .wizard h1, .wizard h2, .wizard h3, .wizard label, .wizard select { font-family: 'Lato'; font-weight: 300; } .btn{ font-family: 'Lato' !important; font-weight: 400 !important; /* font-size: 15px; */ } .wizard { border-radius: 0 0 5px 5px; margin: 20px auto; background: #fff; } .wizard .nav-tabs { position: relative; /* margin: 40px auto; */ margin-bottom: 0; padding: 60px 0px; } .wizard > div.wizard-inner { position: relative; } .connecting-line { height: 2px; background: #e0e0e0; position: absolute; width: 80%; margin: 0 auto; left: 0; right: 0; top: 50%; z-index: 1; } .wizard .nav-tabs > li.active > a, .wizard .nav-tabs > li.active > a:hover, .wizard .nav-tabs > li.active > a:focus { color: #555555; cursor: default; border: 0; border-bottom-color: transparent; } span.round-tab { width: 70px; height: 70px; line-height: 70px; display: inline-block; border-radius: 100px; background: #fff; border: 2px solid #e0e0e0; z-index: 2; position: absolute; left: 0; text-align: center; font-size: 25px; } span.round-tab i { color: #555555; } .wizard li.active span.round-tab { color: #fff; background: rgb(208, 174, 174); border: 2px solid #BD7A7A; } .wizard li.active span.round-tab i { color: #fff; } .wizard li.completed span.round-tab { color: #fff; background: rgb(208, 174, 174); border: 2px solid #BD7A7A; } .wizard li.completed span.round-tab i { color: #fff; } span.round-tab:hover { color: #333; border: 2px solid #ddd; } .wizard .nav-tabs > li { width: 20%; } .wizard li:after { content: " "; position: absolute; left: 46%; opacity: 0; margin: 0 auto; bottom: 0px; border: 5px solid transparent; border-bottom-color: #fff; transition: 0.1s ease-in-out; display: none; } .wizard li.active:after { content: " "; position: absolute; left: 46%; opacity: 1; margin: 0 auto; bottom: 0px; border: 10px solid transparent; border-bottom-color: #fff; } .wizard .nav-tabs > li a { width: 70px; height: 70px; margin: 20px auto; border-radius: 100%; padding: 0; } .wizard .nav-tabs > li a:hover { background: transparent; } .wizard .tab-pane { position: relative; padding: 20px; } .wizard h3 { margin-top: 0; } h1, h2, h3{ color: #555; } .pane-title { margin-top: 0px; } .pane-data { padding-left: 13px } .wizard label{ text-align: center; font-size: 16px; } /*.btn{ margin-top: 10px; padding: 15px 25px; }*/ .progress{ margin-top: 10px; /* background-color: red !important; */ } @media( max-width: 585px) { .wizard { width: 90%; height: auto !important; } span.round-tab { font-size: 16px; width: 50px; height: 50px; line-height: 50px; } .wizard .nav-tabs > li a { width: 50px; height: 50px; line-height: 50px; } .wizard li.active:after { content: " "; position: absolute; left: 35%; } } /* sm screen size */ /*@media only screen and (min-width: 768px) { body{font-size: 14px !important;} }*/ /* xs screen size */ /*@media only screen and (max-width: 768px) { body{font-size: 100% !important;} }*/ .vdivision { height: 50px; background: #e0e0e0; position: absolute; width: 2px; margin: 0 auto; left: 0; right: 0; top: 50%; z-index: 1; } /* .wizard ul li:nth-child(odd){ top:-60px; } .wizard ul li:nth-child(even){ top:60px } .wizard ul li:nth-child(odd) .vdivision{ top:67px; } .wizard ul li:nth-child(even) .vdivision{ top:-5px; } */ .wizard li.up{ top:-60px; } .wizard li.down{ top:60px } .wizard .up .vdivision{ top:67px; } .wizard .down .vdivision{ top:-5px; }
$(document).ready(function () { //Initialize tooltips $('.nav-tabs > li a[title]').tooltip(); //Wizard $('a[data-toggle="tab"]').on('show.bs.tab', function (e) { var $target = $(e.target); if ($target.parent().hasClass('disabled')) { return false; } }); $(".next-step").click(function (e) { var $active = $('.wizard .nav-tabs li.active'); $active.next().removeClass('disabled'); nextTab($active); }); $(".prev-step").click(function (e) { var $active = $('.wizard .nav-tabs li.active'); prevTab($active); }); }); function nextTab(elem) { $(elem).next().find('a[data-toggle="tab"]').click(); } function prevTab(elem) { $(elem).prev().find('a[data-toggle="tab"]').click(); }

Related: See More


Questions / Comments: