Kel*_*ino 5 javascript tabs twitter-bootstrap
我使用了Twitter Bootstrap(http://twitter.github.io/bootstrap/javascript.html#tabs)标签功能,但我希望它是颠倒的,内容显示在顶部,TabMenuNav显示在底部!这可能吗?任何解决方法?
Rav*_*lya 14
使用以下CSS来获得您的期望.我在.tab-content课程中添加了边框以突出显示内容.
.tab-content {
padding:10px;
border:1px solid #ddd;
border-bottom:0px;
}
.nav-tabs {
border-bottom: 0px;
border-top: 1px solid #ddd;
}
.nav-tabs > li {
margin-bottom:0;
margin-top:-1px;
}
.nav-tabs > li > a {
padding-top: 8px;
padding-bottom: 8px;
line-height: 20px;
border: 1px solid transparent;
-moz-border-radius:0px;
-webkit-border-radius:0px;
border-radius:0px;
-moz-border-radius-bottomright: 5px;
-webkit-border-bottom-right-radius: 5px;
border-bottom-right-radius: 5px;
-moz-border-radius-bottomleft: 5px;
-webkit-border-bottom-left-radius: 5px;
border-bottom-left-radius: 5px;
}
.nav-tabs > .active > a, .nav-tabs > .active > a:hover, .nav-tabs > .active > a:focus {
color: #555555;
cursor: default;
background-color: #ffffff;
border: 1px solid #ddd;
border-top-color: transparent;
}
Run Code Online (Sandbox Code Playgroud)
HTML结构应该是这样的:
<div class="tabbable">
<div class="tab-content">
<div id="tab1" class="tab-pane active">
tab1 content</div>
<div id="tab2" class="tab-pane">
tab2 content</div>
<div id="tab3" class="tab-pane">
tab3 content</div>
<div id="tab4" class="tab-pane">
tab4 content</div>
</div>
<ul class="nav nav-tabs">
<li class="active"><a href="#tab1" data-toggle="tab">tab1</a></li>
<li><a href="#tab2" data-toggle="tab">tab2</a></li>
<li><a href="#tab3" data-toggle="tab">tab3</a></li>
<li><a href="#tab4" data-toggle="tab">tab4</a></li>
</ul>
</div>
Run Code Online (Sandbox Code Playgroud)
Bootply示例.
对于那些正在寻找 Bootstrap 4 解决方案的人。
Bootstrap 曾经使用 tabs-below 类来实现这一点。但它在版本 3 中被删除。
我在下面的代码中“恢复”了这个功能。你只需要tabs-below为你的ul元素添加类。检查https://jsfiddle.net/oniltonmaciel/nhfrz2bc/以获得完整的解决方案。
css:
.tabs-below {
border-bottom-width: 0px;
border-top: 1px solid #dee2e6;
}
.tabs-below .nav-link {
border: 1px solid transparent;
border-top-left-radius: 0px;
border-top-right-radius: 0px;
border-bottom-left-radius: .25rem;
border-bottom-right-radius: .25rem;
}
.tabs-below .nav-item {
margin-bottom: 0px;
margin-top: -1px;
}
.tabs-below .nav-item.show .nav-link, .tabs-below .nav-link.active {
border-color: #fff #dee2e6 #dee2e6 #dee2e6;
}
Run Code Online (Sandbox Code Playgroud)
html:
<div class="tab-content" id="myTabContent">
<div class="tab-pane fade show active" id="home" role="tabpanel" aria-labelledby="home-tab"><p>Contents of tab 1</p></div>
<div class="tab-pane fade" id="profile" role="tabpanel" aria-labelledby="profile-tab"><p>Contents of tab 2</p></div>
<div class="tab-pane fade" id="contact" role="tabpanel" aria-labelledby="contact-tab"><p>Contents of tab 3</p></div>
</div>
<ul class="nav nav-tabs tabs-below" id="myTab" role="tablist">
<li class="nav-item">
<a class="nav-link active" id="home-tab" data-toggle="tab" href="#home" role="tab" aria-controls="home" aria-selected="true">Home</a>
</li>
<li class="nav-item">
<a class="nav-link" id="profile-tab" data-toggle="tab" href="#profile" role="tab" aria-controls="profile" aria-selected="false">Profile</a>
</li>
<li class="nav-item">
<a class="nav-link" id="contact-tab" data-toggle="tab" href="#contact" role="tab" aria-controls="contact" aria-selected="false">Contact</a>
</li>
</ul>
Run Code Online (Sandbox Code Playgroud)