JSFiddle - React, Tailwind, and code Playground
by majikarikeruo
HTML
<ul class="p-tabs">
<li class="p-tabs__item active"><a href="#">Menu1</a></li>
<li class="p-tabs__item"><a href="#">Menu2</a></li>
</ul>
<div class="p-tab-contents">
<div class="p-tab-contents__item current">
これがメニュー1。この中にコンテンツを入れていってください。
</div>
<div class="p-tab-contents__item">
これがメニュー2。この中にコンテンツを入れていってください。
</div>
</div>
CSS
.p-tabs{
display: flex;
margin: 0;
list-style: none;
}
.p-tabs__item{
margin: 0 20px;
}
.p-tabs__item a{
display: block;
padding: 8px 12px;
border: solid 1px #333;
border-bottom: none;
color: #333;
text-decoration: none;
}
.p-tabs__item.active a{
background: #333;
color: #fff;
}
.p-tab-contents{
padding: 8px;
border: solid 1px #333;
}
.p-tab-contents__item{
display: none;
}
.p-tab-contents__item.current{
display: block;
}
JavaScript
$('.p-tabs__item').on('click', function(){
$('.active').removeClass('active');
$(this).addClass('active');
const selectedTabIndex = $(this).index();
$('.current').removeClass('current');
$('.p-tab-contents__item').eq(selectedTabIndex).addClass('current');
});