Creating A Vertical Tabs System with jQuery and CSS3
| File Size: | 2.97 KB KB |
|---|---|
| Views Total: | 28468 |
| Last Update: | |
| Publish Date: | |
| Official Website: | Go to website |
| License: | MIT |
A simple tabs system with vertical tabbed navigation, using CSS3 transitions and a little bit of jQuery script to toggle CSS classes.
How to use it:
1. Create tabs and tabbed content following the html structure like so:
<div class="tabs">
<nav>
<a>Tab #1</a>
<a>Tab #2</a>
<a>Tab #3</a>
</nav>
<div class="content">
<p>Content #1</p>
</div>
<div class="content">
<p>Content #2</p>
</div>
<div class="content">
<p>Content #3</p>
</div>
</div>
2. The primary CSS / CSS3 styles for the tabs system.
.tabs {
margin: 0px 20px;
position: relative;
background: #EFF1E4;
box-shadow: 0px 0px 40px rgba(0, 0, 0, 0.2);
width: 100%;
}
.tabs nav {
display: flex;
flex-wrap: wrap;
align-items: stretch;
background: #AD9897;
color: #6C5D5D;
text-shadow: 1px 1px 1px rgba(255, 255, 255, 0.2);
width: 150px;
}
.tabs nav a {
padding: 20px 0px;
text-align: center;
width: 100%;
cursor: pointer;
}
.tabs nav a:hover,
.tabs nav a.selected {
background: #6C5D5D;
color: #AD9897;
text-shadow: 1px 1px 1px rgba(0, 0, 0, 0.2);
}
.tabs .content {
padding: 20px 0px;
position: absolute;
top: 0px;
left: 150px;
color: #6C5D5D;
width: 0px;
height: 100%;
overflow: hidden;
opacity: 0;
transition: opacity 0.1s linear 0s;
}
.tabs .content.visible {
padding: 20px;
width: calc(100% - 150px);
overflow: scroll;
opacity: 1;
}
.tabs .content p { padding-bottom: 2px; }
.tabs .content p:last-of-type { padding-bottom: 0px; }
3. Include the jQuery JavaScript library at the bottom of the web page.
<script src="//code.jquery.com/jquery-2.1.4.min.js"></script>
4. The core JavaScript to toggle CSS class as you switch between tabs.
$(function() {
$('.tabs nav a').on('click', function() {
show_content($(this).index());
});
show_content(0);
function show_content(index) {
// Make the content visible
$('.tabs .content.visible').removeClass('visible');
$('.tabs .content:nth-of-type(' + (index + 1) + ')').addClass('visible');
// Set the tab to selected
$('.tabs nav a.selected').removeClass('selected');
$('.tabs nav a:nth-of-type(' + (index + 1) + ')').addClass('selected');
}
});
This awesome jQuery plugin is developed by kevin11. For more Advanced Usages, please check the demo page or visit the official website.











