> Manuales > Manual de TailwindCSS

Mejora el aspecto de las listas de elementos con Tailwind CSS. Varias alternativas para estilizar listas UL y LI, con su código HTML y las clases de utilidad. Distintas configuraciones con varios tipos de bullets, incluso basados en imágenes SVG.

Listas con Tailwind CSS

Vamos a comenzar una serie de artículos dedicados a la creación de interfaces típicas de sitios web utilizando el framework CSS Tailwind, que seguro que ya conocéis. Este primer artículo vamos a dedicarlo al trabajo con listas de elementos.

Por si alguien no conoce Tailwind CSS, es un framework basado en clases de utilidad que hemos podido aprender a manejar en el Manual de Tailwind CSS.

Listas de Elementos y Tailwind CSS

El framework CSS Tailwind viene con un reseteo de los estilos CSS, de modo que cuando utilizamos las listas de elementos, me refiero a etiquetas <ul> principalmente, estas aparecen totalmente carentes de formato. Como sabes las listas son muy recurridas en el día a día del diseño web y tener esos pequeños puntitos (bullets) al lado de cada uno de los elementos resulta bastante práctico, visualmente hablando.

Por supuesto además de los famosos bullets de las listas, a veces también nos gustaría tener iconos u otro tipo de elementos que señalen cada uno de los ítems de la lista. Esto no podremos conseguirlo directamente con HTML y CSS, pero nos podremos apoyar en elementos adicionales como imágenes SVG.

A lo largo de este artículo vamos a ver varios ejemplos de listas con diferentes estilos que ilustran casos típicos de trabajo con listas para darles un formato adecuado y diverso.

Listas con bullets HTML

Vamos a comenzar por lo más típico y sencillo, que sería construir una lista con bullets de los que conseguimos con el propio HTML, siendo que cada elemento aparecerá en una línea diferente que es lo típico de las listas.

<ul class="list-disc pl-5">
  <li class="mb-2">Elemento 1</li>
  <li class="mb-2">Elemento 2</li>
  <li class="mb-2">Elemento 3</li>
</ul>

En este ejemplo conseguimos los bullets con la clase list-disc. Estos son los bullets "nativos" de HTML, los que se presentan como predeterminados.

Parece que es un ejemplo tonto, pero es que en Tailwind CSS, por el reseteo del CSS, no aparecen los bullets de manera predeterminada.

Además con la clase pl-5 en la etiqueta <ul> conseguimos un poco de padding a la izquierda para que los bullets no estén pegados al borde. Adicionalmente tenemos la clase mb-2 en cada elemento <li>, que permite que exista un pequeño margen en la parte inferior para separar los elementos de la lista.

Cambiar el estilo de los bullets

Existen otros tipos de estilos de bullets en HTML pero no tenemos clases de utilidad para ellos, por lo que es necesario usar clases arbitrarias de Tailwind CSS.

Por ejemplo si queremos que los Bullets aparezcan como círculos sin relleno podremos utilizar este código de aquí:

<ul class="list-[circle] pl-5">

Lista inline con Tailwind CSS

A veces es muy útil conseguir listas en línea, es decir donde cada uno de los elementos está en la misma línea. Para esto cada uno de los <li> debería ser inline-block.

Para que este estilo quede bien podemos ponerle algún estilo representativo a los elementos, por ejemplo encajarlos dentro de su propia caja y que quede patente su individualidad.

<ul class="my-4">
    <li class="inline-block bg-orange-200 rounded-full px-4 py-1 mr-2">CSS</li>
    <li class="inline-block bg-orange-200 rounded-full px-4 py-1 mr-2">HTML</li>
    <li class="inline-block bg-orange-200 rounded-full px-4 py-1 mr-2">Javascript</li>
</ul>

Listas con elementos inline-block con Tailwind CSS

En esta lista hemos colocado varios estilos para sus elementos y hemos dejado la propia lista UL con un simple margen arriba y abajo. Los estilos de los elementos LI utilizados son los siguientes:

Lista de elementos vertical con borde de separación entre ellos

Ahora vamos a hacer una lista que podríamos utilizar perfectamente como barra de navegación horizontal. Sería una lista donde los elementos aparecerán uno abajo del otro, donde los elementos tendrán un separador entre ellos.

<ul class="text-center">
    <li class="font-bold uppercase border-b-2 border-gray-300 pb-2 mb-2">Productos</li>
    <li class="font-bold uppercase border-b-2 border-gray-300 pb-2 mb-2">Quienes somos</li>
    <li class="font-bold uppercase pb-2 mb-2">Contacto</li>
</ul>

Lista con elementos en la vertical y centrados, con separador

En este caso hemos hecho una lista con el contenido centrado, donde tenemos un mismo estilo para todos los elementos, menos para el último, que le hemos quitado el borde inferior, pues no quedan otros elementos con los que separarse.

Los estilos determinados que hemos utilizado en este ejemplo son:

Elementos de lista con el bullet personalizado mediante SVG

En el último ejemplo vamos a mostrar cómo podríamos eliminar los bullets de las listas y sustituirlos por imágenes personalizadas. Con esto conseguiremos efecto diferente en las listas que no podríamos obtener solo con el HTML nativo.

Las imágenes personalizadas las vamos a conseguir por medio de archivos SVG, ya que este tipo de formato es ideal para el uso que vamos a realizar. Nos ayudará a crear listas de todos los tamaños con un único archivo, que se podrá adaptar perfectamente y sacar lo mejor de cada dimensión o pantalla de dispositivo sin perder la calidad.

<ul class="list-none pl-0">
    <li class="flex items-center mb-2">
        <img src="arrow.svg" alt="Flecha" class="w-4 h-4 mr-2">
        Discos duros
    </li>
    <li class="flex items-center mb-2">
        <img src="arrow.svg" alt="Flecha" class="w-4 h-4 mr-2">
        Procesadores
    </li>
    <li class="flex items-center mb-2">
        <img src="arrow.svg" alt="Flecha" class="w-4 h-4 mr-2">
        Monitores
    </li>
</ul>

Listas con bullets que personalizamos con imágenes svg

En este caso hemos usado una lista UL sin bullets predeterminados, para ello usamos la clase de utilidad list-none. Además hemos usado pl-0 para eliminar el padding a la izquierda para que la lista comience desde el borde, aunque esto no sería estrictamente necesario puesto que son los estilos que fija de manera predeterminada el reset.

Además para los elementos de la lista hemos aplicado los siguientes estilos con clases de utilidad:

Por último tenemos la imagen SVG como bullet, que también tiene algunos estilos:

Miguel Angel Alvarez

Fundador de DesarrolloWeb.com y la plataforma de formación online EscuelaIT. Com...

Manual