Bootstrap4 のタブ機能「.nav-pills」を利用してボタンで切り替えのできるようにしています。アクティブなボタンには吹き出しを付けました。他のボタンもフォーカスやホバーで吹き出しがつけたいのですが、吹き出しを設定するとタブが動作しなくなります。
html
1<div class="col-12 pt-3 pl-3"> 2<!-- タブボタン部分 --> 3 <ul class="nav nav-pills mt-3"> 4 <li class="nav-item"> 5 <a href="#tab1" class="nav-link active" data-toggle="tab">タブ1</a> 6 </li> 7 <li class="nav-item"> 8 <a href="#tab2" class="nav-link" data-toggle="tab">タブ2</a> 9 </li> 10 <li class="nav-item"> 11 <a href="#tab3" class="nav-link" data-toggle="tab">タブ3</a> 12 </li> 13 <li class="nav-item"> 14 <a href="#tab4" class="nav-link" data-toggle="tab">タブ4</a> 15 </li> 16 </ul> 17 18<!--タブのコンテンツ部分--> 19 <div class="tab-content mb-3"> 20 <div id="tab1" class="tab-pane active mt-3"> 21 <p>タブ1内容</p> 22 </div> 23 <div id="tab2" class="tab-pane mt-3"> 24 <p>タブ2内容</p> 25 </div> 26 <div id="tab3" class="tab-pane mt-3"> 27 <p>タブ3内容</p> 28 </div> 29 <div id="tab4" class="tab-pane mt-3"> 30 <p>タブ4内容</p> 31 </div> 32 </div><!--./tab-content--> 33</div>
css
1.tab-content{ 2 width:100%; 3} 4 5.nav-pills .nav-link { 6 border-radius: 0rem; 7 color:#333333; 8 background-color: #dcdcdc; 9 margin-right:1rem; 10} 11 12.nav-pills .nav-link:hover{ 13 color: #fff; 14 background-color: #0099cc; 15} 16 17.nav-pills .nav-link:focus, .nav-pills .nav-link:hover { 18 position: relative; 19 display: inline-block; 20 padding:0.5rem 1rem; 21 min-width: 120px; 22 max-width: 100%; 23 color: #fff; 24 font-size: 1rem; 25 background: #0099cc; 26} 27 28/* この部分を有効にするとタブが正しく動きません--------------- 29.nav-pills .nav-link:focus, .nav-pills .nav-link:hover:before{ 30 content: ""; 31 position: absolute; 32 top: 100%; 33 left: 50%; 34 margin-left: -10px; 35 border: 10px solid transparent; 36 border-top: 10px solid #0099cc; 37}-----------------------------------------------------------*/ 38 39.nav-pills .nav-link.active, 40.nav-pills .show > .nav-link { 41 color: #fff; 42 background-color: #ef7741; 43} 44 45.nav-pills .nav-link.active { 46 position: relative; 47 display: inline-block; 48 padding:0.5rem 1rem; 49 min-width: 120px; 50 max-width: 100%; 51 color: #fff; 52 font-size: 1rem; 53 background: #ef7741; 54} 55 56.nav-pills .nav-link.active:before{ 57 content: ""; 58 position: absolute; 59 top: 100%; 60 left: 50%; 61 margin-left: -10px; 62 border: 10px solid transparent; 63 border-top: 10px solid #ef7741; 64}
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2018/02/23 09:05