タブもBootstrapならHTMLのみでも表現する事ができます。 ページを読み込まずに画面推移が可能なので、ひとつのページで多くのコンテンツを表示させたい場合などにいかがでしょうか?
Bootstrap4のバージョン4.3をベースに書いています。
タブメニューサンプル
今回は以下のように作成していきます。
有名な使われ方の例だとYahooの最新ニュースなどを表示するトピックス部分になります。
タブ1の内容
タブ2の内容
タブ3の内容
タブ4の内容
タブボタンを作成
タブボタンは.nav .nav-tabs内に記述していきます。.activeを追加することによりデフォルトで任意のタブを選択状態にさせる事ができます。その際は該当するコンテンツにも.activeを指定しておきましょう。
<ul class="nav nav-tabs">
<li class="nav-item"><a class="nav-link active" href="#tab1" data-toggle="tab">タブ1</a></li>
<li class="nav-item"><a class="nav-link" href="#tab2" data-toggle="tab">タブ2</a></li>
<li class="nav-item"><a class="nav-link" href="#tab3" data-toggle="tab">タブ3</a></li>
<li class="nav-item"><a class="nav-link" href="#tab4" data-toggle="tab">タブ4</a></li>
</ul>
各タブに表示させるコンテンツを作成
コンテンツを表示させる部分になります。
.tab-content内に記述していきます。コンテンツ内は画像やリストなど自由に記述してください。
<div class="tab-content">
<div id="tab1" class="tab-pane active">タブ1の内容</div>
<div id="tab2" class="tab-pane">タブ2の内容</div>
<div id="tab3" class="tab-pane">タブ3の内容</div>
<div id="tab4" class="tab-pane">タブ4の内容</div>
</div>
サンプルコード
タブボタンとコンテンツ表示部分を合わせたサンプルコードになります。
<ul class="nav nav-tabs">
<li class="nav-item"><a class="nav-link active" href="#tab1" data-toggle="tab">タブ1</a></li>
<li class="nav-item"><a class="nav-link" href="#tab2" data-toggle="tab">タブ2</a></li>
<li class="nav-item"><a class="nav-link" href="#tab3" data-toggle="tab">タブ3</a></li>
<li class="nav-item"><a class="nav-link" href="#tab4" data-toggle="tab">タブ4</a></li>
</ul>
<div class="tab-content">
<div id="tab1" class="tab-pane active">タブ1の内容</div>
<div id="tab2" class="tab-pane">タブ2の内容</div>
<div id="tab3" class="tab-pane">タブ3の内容</div>
<div id="tab4" class="tab-pane">タブ4の内容</div>
</div>
