Pestañas

Pestañas para agrupar bloques de contenido.

Contenido

Pestañas básicas

Las pestañas se agrupan con la clase .tab-system y el atributo data-tab-system. Al conjunto de pestañas (estructura ul) se les asigna la clase .nav-tabs--basic, y cada pestaña recibe la clase .tab y el atributo data-tab-trigger. Cada pestaña es un enlace que apunta al id de su correspondiente bloque, y cada uno de los bloques tiene la clase .tab-content y el atributo data-tab-content.

La pestaña activa y su bloque correspondiente se señalan con la clase .is-active.

Cuando las pestañas no tienen espacio suficiente para mostrarse (normalmente, en pantallas pequeñas), muestran un scroll horizontal. Si el JavaScript falla por la razón que sea, las pestañas siguen siendo interaccionables gracias al selector :target.

Pestañas para filtrar

Contenido pestaña 1

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

<div data-tab-system="" class="tab-system">
    <ul role="tablist" class="nav-tabs nav-tabs--basic">
        <li role="presentation" class="col-md-3">
            <a href="#tab-content-4" id="tab-4" role="tab" aria-controls="tab-content-4" aria-selected="true" data-tab-trigger="" class="tab is-active">
                <h4>Pestaña 1</h4>
            </a>
        </li>
        <li role="presentation" class="col-md-3">
            <a href="#tab-content-5" id="tab-5" role="tab" aria-controls="tab-content-5" aria-selected="false" aria-controls="tab-content-5" data-tab-trigger="" class="tab">
                <h4>Pestaña 2</h4>
            </a>
        </li>
        <li role="presentation" class="col-md-3">
            <a href="#tab-content-6" id="tab-6" role="tab" aria-controls="tab-content-6" aria-selected="false" aria-controls="tab-content-6" data-tab-trigger="" class="tab">
                <h4>Pestaña 3</h4>
            </a>
        </li>
    </ul>
    <div id="tab-content-4" data-tab-content="" role="tabpanel" aria-labelledby="tab-4" aria-hidden="false" class="tab-content is-active">
        <div class="col-xs-12">
            <p>Contenido pestaña 1</p>
        </div>
    </div>
    <div id="tab-content-5" data-tab-content="" role="tabpanel" aria-labelledby="tab-5" aria-hidden="true"  class="tab-content">
        <div class="col-xs-12">
            <p>Contenido pestaña 2</p>
        </div>
    </div>
    <div id="tab-content-6" data-tab-content="" role="tabpanel" aria-labelledby="tab-6" aria-hidden="true" class="tab-content">
        <div class="col-xs-12">
            <p>Contenido pestaña 3</p>
        </div>
    </div>
</div>

Pestañas básicas - Solo en móvil

Si el contenido solo debe actuar como pestaña en dispositivos móviles, se ha de añadir la clase .tab-content--mobile-only a los elementos .tab-content, se deben ocultar las pestañas añadiendo la clase .visible-xs en el .nav-tabs y para mantener visible el título de cada bloque se debe trasladar al contenido de la pestaña y ocultar con las clase .hidden-xs.

Pestañas solo en móvil

Contenido pestaña 1

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

<div data-tab-system="" class="tab-system">
    <ul role="tablist" class="nav-tabs nav-tabs--basic visible-xs">
          <li role="presentation" class="col-md-3"><a href="#tab-content-7" id="tab-7" role="tab" aria-controls="tab-content-7" aria-selected="true" data-tab-trigger="" class="tab is-active">
                <h4>Pestaña 1</h4></a></li>
          <li role="presentation" class="col-md-3"><a href="#tab-content-8" id="tab-8" role="tab" aria-controls="tab-content-8" aria-selected="false" data-tab-trigger="" class="tab">
                <h4>Pestaña 2</h4></a></li>
          <li role="presentation" class="col-md-3"><a href="#tab-content-9" id="tab-9" role="tab" aria-controls="tab-content-9" aria-selected="false" data-tab-trigger="" class="tab">
                <h4>Pestaña 3</h4></a></li>
    </ul>
    <div id="tab-content-7" data-tab-content="" role="tabpanel" aria-labelledby="tab-7" aria-hidden="false" class="tab-content tab-content--mobile-only is-active">
          <div class="col-xs-12">
                <h4 class="hidden-xs">Pestaña 1</h4>
                <p>Contenido pestaña 1</p>
                <p>....</p>
          </div>
    </div>
    <div id="tab-content-8" data-tab-content="" role="tabpanel" aria-labelledby="tab-8" aria-hidden="true" class="tab-content tab-content--mobile-only">
          <div class="col-xs-12">
                <h4 class="hidden-xs">Pestaña 2</h4>
                <p>Contenido pestaña 2</p>
                <p>....</p>
          </div>
    </div>
    <div id="tab-content-9" data-tab-content="" role="tabpanel" aria-labelledby="tab-9" aria-hidden="true" class="tab-content tab-content--mobile-only">
          <div class="col-xs-12">
                <h4 class="hidden-xs">Pestaña 3</h4>
                <p>Contenido pestaña 3</p>
                <p>....</p>
          </div>
    </div>
</div>

Pestañas alternativas

Por defecto las pestañas básicas usan scroll para su correcta visualización en horizontal. Si por el contrario necesitamos mostrar las pestañas en vertical debemos hacer uso de las clases de la retícula (Ej: col-xs-12 col-md-3) y debemos utilizar la clase.nav-tabs--alternative en lugar de.nav-tabs--basic

Pestañas alternativas

Contenido pestaña 1

Lorem ipsum dolor sit amet, consectetur adipiscing elit, sed do eiusmod tempor incididunt ut labore et dolore magna aliqua. Ut enim ad minim veniam, quis nostrud exercitation ullamco laboris nisi ut aliquip ex ea commodo consequat. Duis aute irure dolor in reprehenderit in voluptate velit esse cillum dolore eu fugiat nulla pariatur.

<div data-tab-system="" class="tab-system">
    <ul role="tablist" class="nav-tabs nav-tabs--alternative">
      <li role="presentation" class="col-xs-12 col-md-3">
        <a id="tab-10" href="#tab-content-10" role="tab" aria-controls="tab-content-10" aria-selected="true" data-tab-trigger="" class="tab is-active">
        <h4 class="m-bottom-0y">Pestaña 1</h4></a></li>
      <li role="presentation" class="col-xs-12 col-md-3">
      <a id="tab-11" href="#tab-content-11" role="tab" aria-controls="tab-content-11" aria-selected="false" data-tab-trigger="" class="tab">
          <h4 class="m-bottom-0y">Pestaña 2</h4></a></li>
      <li role="presentation" class="col-xs-12 col-md-3">
      <a id="tab-12" href="#tab-content-12" role="tab" aria-controls="tab-content-12" aria-selected="false" data-tab-trigger="" class="tab">
          <h4 class="m-bottom-0y">Pestaña 3</h4></a></li>
    </ul>
    <div id="tab-content-10" data-tab-content="" role="tabpanel" aria-labelledby="tab-10" aria-hidden="false" class="tab-content is-active">
      <div class="col-xs-12">
        <p>Contenido pestaña 1</p>
        <p>
          ...
        </p>
      </div>
    </div>
    <div id="tab-content-11" data-tab-content="" role="tabpanel" aria-labelledby="tab-11" aria-hidden="true" class="tab-content">
      <div class="col-xs-12">
        <p>Contenido pestaña 2</p>
        <p>
          ...
        </p>
      </div>
    </div>
    <div id="tab-content-12" data-tab-content="" role="tabpanel" aria-labelledby="tab-12" aria-hidden="true" class="tab-content">
      <div class="col-xs-12">
        <p>Contenido pestaña 3</p>
        <p>
          ...
        </p>
      </div>
    </div>
</div>
Subir