JSFiddle - React, Tailwind, and code Playground
by huskydawgs
HTML
<ul class="tabs">
<li>
<input type="radio" name="tabs" id="tab-1" checked>
<label for="tab-1">First</label>
<div class="tab-content">
<p>Lorem ipsum dolor sit amet, consectetur adipisicing elit. Rerum fuga porro placeat enim cumque nobis, eum atque suscipit optio quibusdam dolores recusandae! Ab fugiat deserunt explicabo expedita delectus labore illum.</p>
<p>Harum facilis, dolore! Sed eligendi accusamus harum, earum error a praesentium! Esse laboriosam incidunt, suscipit possimus magnam nostrum voluptatem minima deserunt nisi, sint iste tenetur corporis itaque aspernatur neque explicabo.</p>
<p>Nobis nihil dolores optio! Aperiam laudantium ipsam alias enim, omnis voluptatem laboriosam, repudiandae magni, quas, quos in repellendus delectus! Vel consequatur tempora aperiam earum temporibus nemo cupiditate laudantium laboriosam, eos.</p>
<p>Quis eveniet delectus, earum rerum asperiores ducimus quos eaque ex tenetur corporis ullam hic quasi magni laborum necessitatibus impedit voluptates! Deleniti fuga aliquam ex. Reiciendis necessitatibus, obcaecati et labore aliquid.</p>
<p>Fuga odit at nostrum molestias, inventore deserunt tempore quae cupiditate nulla voluptatem earum doloribus quia iste, eum dignissimos totam similique ea unde asperiores! Vero unde rem laboriosam repellat sunt. Vel.</p>
<p>Qui nobis praesentium in. Natus quisquam in repudiandae laborum saepe excepturi veniam dicta vitae porro qui at obcaecati dolorum amet eligendi asperiores quia velit eum, aut libero itaque quidem numquam.</p>
<p>Similique repellendus blanditiis ratione odio ducimus cupiditate laborum maiores a explicabo molestias voluptas tenetur, sed sit inventore officia mollitia iusto doloremque accusamus provident cum obcaecati dolores. Saepe enim natus perferendis.</p>
<p>Aut perspiciatis eum explicabo odio aspernatur laboriosam impedit atque doloremque at, quo. Dolore fugiat et cupiditate accusamus consectetur illum error ut saepe, explicabo...
CSS
.tabs{
list-style-type: none;
padding: 0;
margin: 0;
position: relative;
}
.tabs:after{
content: "";
clear: both;
display: block;
height: 242px;
}
.tabs li{
float: left;
}
.tabs li > input{
display: none;
}
.tabs li > label{
display: inline-block;
border: 1px solid #000;
border-right-width: 0;
border-bottom-width: 0;
height: 30px;
line-height: 30px;
padding: 5px 20px;
cursor: pointer;
}
.tabs li:last-child > label{
border-right-width: 1px;
}
.tabs .tab-content{
display: none;
position: absolute;
left: 0;
padding: 20px;
border: none;
height: 200px;
overflow-y: scroll;
}
/* Functional */
.tabs li > input:checked + label{
background-color: #ddd;
}
.tabs li > input:checked ~ .tab-content{
display: block;
}