web-dev-qa-db-ja.com

bootstrap 3?でタブを上/右に揃える方法は?

bootstrap 3つのタブを左ではなく右に揃える必要があります。

bootstrap cssの使用で可能ですか、またはカスタムcssを使用する必要がありますか?

29
chubbyk

クラス.navbar-rightを使用してnavbar内で要素を右にプッシュするか、.pull-rightを使用してnavbar内にないときに同じことを行います。

<ul class="nav nav-tabs navbar-right">
    <li class="active"><a href="#">Home</a></li>
    <li><a href="#">Tab1</a></li>
    <li><a href="#">Tab2</a></li>
</ul>

ここの他のヘルパークラスについても知っておくとよいでしょう。 http://getbootstrap.com/css/#helper-classes

30
Shawn Taylor

プルライトクラスを使用します。

<ul class="nav nav-tabs">
    <li class="active pull-right"><a href="#">Home</a></li>
    <li class="pull-right"><a href="#">Tab1</a></li>
    <li class="pull-right"><a href="#">Tab2</a></li>
</ul>
21
ShSehati

.pull-rightを使用するとこれが行われるため、望ましくありません。

enter image description here

あなたが欲しいのはこれです: enter image description here

いくつかを調整する必要があります。

http://jsbin.com/zuxol/1/

HTML

  <div class="right-tabs clearfix">
<ul class="nav nav-tabs">
  <li class="active"><a href="#tab_a" data-toggle="tab">Tab A</a></li>
  <li><a href="#tab_b" data-toggle="tab">Tab B</a></li>
  <li><a href="#tab_c" data-toggle="tab">Tab C</a></li>
  <li><a href="#tab_d" data-toggle="tab">Tab D</a></li>
</ul>
<div class="tab-content">
        <div class="tab-pane active" id="tab_a">
            <h4>Pane A</h4>
            <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames
                ac turpis egestas.</p>
        </div>
        <div class="tab-pane" id="tab_b">
            <h4>Pane B</h4>
            <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames
                ac turpis egestas.</p>
        </div>
        <div class="tab-pane" id="tab_c">
            <h4>Pane C</h4>
            <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames
                ac turpis egestas.</p>
        </div>
        <div class="tab-pane" id="tab_d">
            <h4>Pane D</h4>
            <p>Pellentesque habitant morbi tristique senectus et netus et malesuada fames
                ac turpis egestas.</p>
        </div>
</div><!-- tab content -->

</div><!-- end right-tabs -->  

CSS

.right-tabs .nav {
    float: right;
    border-bottom: 0px;
}
.right-tabs .nav li { float: left }
.right-tabs .tab-content {
    float: left;
    border-top: 1px solid #ddd;
    margin-top: -1px;
}
18
Christina

私はそれが古い投稿であることを知っていますが、魂は簡単です:

CSS

.nav-rtl {
    padding-left:40px;
    padding-right:0px;
}

.nav-rtl li {
    float:right;
}

HTML

<ul class="nav nav-tabs nav-rtl" role="tablist">
    <li ..... ></li>
    <li ..... ></li>  // an so on
</ul>
13
eladcm

ここで誰かがbootstrap 4を使用して答えを探している場合:

あなたは付け加えられます ml-auto右にプッシュするタブに

<ul class="nav nav-tabs small" role="tablist">
    <li class="nav-item">
        <a class="nav-link active" data-toggle="tab" href="#first" role="tab">First</a>
    </li>
    <!-- .ml-auto: adds margin to the left of this tab, all tabs behind this one, are pushed to the right -->
    <li class="nav-item ml-auto"> 
        <a class="nav-link" data-toggle="tab" href="#second" role="tab">Second</a>
    </li>
    <li class="nav-item">
        <a class="nav-link" data-toggle="tab" href="#third" role="tab">Third</a>
    </li>
</ul>

ブートストラップドキュメント:自動マージン

3
Andy

右揃えの新しいクラスを作成し、以下のcssを使用します。

/* overwrite boostrap */

.nav>li {
  float: none!important;
  display: inline-block!important;
}
/* new class */

.nav-tabs-right {
  text-align: right;
  font-size: 0;
  /* prevent floated child bug */
}
.nav-tabs-right>li {
  display: inline-block;
  clear: left;
  float: none;
  text-align: right;
  font-size: 12px;
}
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/css/bootstrap.min.css" rel="stylesheet" />
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.11.1/jquery.min.js"></script>
<script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.6/js/bootstrap.min.js"></script>

<div class="container jumbotron">

  <ul class="nav nav-tabs nav-tabs-right">
    <li class="active">
      <a data-toggle="tabs" href="#tab-1">Tab 1</a>
    </li>
    <li>
      <a data-toggle="tabs" href="#tab-2">Tab 2</a>
    </li>
  </ul>

</div>
2
Deepak Yadav

右揃えのタブを使用するには、.text-rightクラスに.nav-tabsを追加するだけです。

<ul class="nav nav-tabs text-right nav-tabs-highlight ">
0
Arya shrida

非常にシンプルで優れたソリューションは、balexandreによってすでにここで説明されています。

a bootstrap navbarを右に揃える

.right-to-left li {
  float: right !important;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/Twitter-bootstrap/3.3.7/js/bootstrap.min.js"></script>

<link href="https://cdnjs.cloudflare.com/ajax/libs/Twitter-bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>


<h2>Bootstrap tab aligned right</h2>
<ul class="nav nav-tabs right-to-left">
  <li role="3" class="active"><a href="#">Tab 3</a></li>
  <li role="2"><a href="#">Tab 2</a></li>
  <li role="1"><a href="#">Tab 1</a></li>
</ul>

(タブが逆順になっているわけではありません)

0
Roland