Vertical Tabs
Frontend Club
2 min read
Crea una pestaña vertical paso a paso, usando HTML, CSS y JavaScript.
Ejemplo:
Marcado HTML
<h2>Pestañas verticales</h2>
<p>Haz clic en los botones dentro de la pestaña del menú:</p>
<div class="tab">
<button class="tablinks" onclick="openCity(event, 'Sucre')" id="defaultOpen">Sucre</button>
<button class="tablinks" onclick="openCity(event, 'Lima')">Lima</button>
<button class="tablinks" onclick="openCity(event, 'Bogota')">Bogotá</button>
</div>
<div id="Sucre" class="tabcontent">
<h3>Sucre</h3>
<p>Sucre es la ciudad capital de Bolivia.</p>
</div>
<div id="Lima" class="tabcontent">
<h3>Lima</h3>
<p>Lima es la ciudad capital de Perú.</p>
</div>
<div id="Bogota" class="tabcontent">
<h3>Bogotá</h3>
<p>Bogotá es la ciudad capital de Colombia.</p>
</div>
Estilos CSS
/* Estilos tab */
.tab {
float: left;
border: 1px solid #ccc;
background-color: #f1f1f1;
width: 30%;
height: 300px;
}
/* Estilos boton dentro del tab */
.tab button {
display: block;
background-color: inherit;
color: black;
padding: 22px 16px;
width: 100%;
border: none;
outline: none;
text-align: left;
cursor: pointer;
transition: 0.3s;
font-size: 17px;
}
/* Cambiar color de fondo de botones con hover */
.tab button:hover {
background-color: #ddd;
}
/* Crea una clase active/current "botón tab" */
.tab button.active {
background-color: #ccc;
}
/* Estilos contenido tab */
.tabcontent {
float: left;
padding: 0px 12px;
border: 1px solid #ccc;
width: 70%;
border-left: none;
height: 300px;
}
Código JavaScript
function openCity(evt, cityName) {
var i, tabcontent, tablinks;
tabcontent = document.getElementsByClassName("tabcontent");
for (i = 0; i < tabcontent.length; i++) {
tabcontent[i].style.display = "none";
}
tablinks = document.getElementsByClassName("tablinks");
for (i = 0; i < tablinks.length; i++) {
tablinks[i].className = tablinks[i].className.replace(" active", "");
}
document.getElementById(cityName).style.display = "block";
evt.currentTarget.className += " active";
}
// Obten el elemento con id="defaultOpen" y haz clic
document.getElementById("defaultOpen").click();
Referencias
El contenido de este artículo es una inspiración y traducción de:
"La mejor manera de aprender a programar es practicando todos los días"
0
Subscribe to my newsletter
Read articles from Frontend Club directly inside your inbox. Subscribe to the newsletter, and don't miss out.
Written by
Frontend Club
Frontend Club
La mejor manera de aprender a programar es practicando todos los días.