Crea interfaces web amigables con Twitter Bootstrap

1
10753

Introducción a Twitter Bootstrap

0. Índice de contenidos.

1. Introducción.

Actualmente cuando montamos un proyecto nuevo no nos planteamos hacerlo a las bravas, solemos apoyarnos en frameworks como Spring que nos aportan patrones de diseño y contenedores para la creación e inyección de dependencias, inversión de control, etc. o utilizamos frameworks de persistencia tipo MyBatis o Hibernate para trabajar con la base de datos. Para la parte front utilizamos también frameworks tipo Struts, JSF o Spring MVC y trabajamos con el DOM a través de jQuery o frameworks Javascript similares. ¿Por qué entonces no utilizamos algo parecido para las hojas de estilo?.

Si empezamos un proyecto nuevo, o queremos mejorar esas interminables hojas de estilo con cientos de selectores, y los requisitos del proyecto nos lo permiten, os recomiendo utilizar Twitter Bootstrap, una plantilla CSS con un montón de funcionalidades: layouts para crear interfaces ‘responsive’, listas, formularios, botones, menús, desplegables, etc.

En este tutorial vamos a ver cómo utilizar Twitter Bootstrap y haremos un repaso por sus principales componentes.

2. Entorno.

El tutorial se ha realizado con el siguiente entorno:

  • MacBook Pro 15′ (2.4 GHz Intel Core i5, 8GB DDR3 SDRAM).
  • Twitter Bootstrap 2.3.2
  • jQuery 2.1.3

3. Instalación

Descargamos Twitter Bootstrap de la web oficial. Nos descargamos el .zip y lo descomprimimos. Tiene el siguiente contenido:

Son tres carpetas: los CSS, los archivos JS y las imágenes en sus versiones de desarrollo y producción. Un aspecto a tener en cuenta es que Bootstrap requiere jQuery por lo que debemos incluirlo en nuestro proyecto. Nos lo descargamos de la web oficial.

Creamos una página básica que incluya lo siguiente:

4. Definiendo el grid

El grid de la web o también llamado scaffolding de la página debemos definirlo bien ya que una vez que tengamos definidas las zonas de la web será más sencillo añadir el contenido. Hay que tener muy en cuenta que un gran número de usuarios se conectan ya a Internet desde dispositivos móviles con diferentes resoluciones y tamaños de pantalla por lo que siempre debemos tener presente que nuestra web se debe ver bien en múltiples dispositivos.

El grid de una web se define utilizando 12 columnas como máximo, si se ve la web desde un PC por ejemplo. A medida que reducimos el tamaño de la pantalla iremos quitando columnas al grid.

Para usar los tamaños de cada una de estas columnas lo especificamos con span[numero]. Lo suyo será incluir el grid dentro de un contenedor. Los ‘fluid’ utilizan porcentajes en lugar de pixels fijos para determinar los anchos por lo que es más recomendable para que se vea bien en múltiples dispositivos.

5. Componentes básicos

Twitter Bootstrap dispone de un catálogo de componentes muy amplio con todo lo necesario para crear interfaces web. Muestro alguno de los más comunes:

Tablas

# First Name Last Name Username
1 Mark Otto @mdo
2 Jacob Thornton @fat
3 Larry the Bird @twitter

Formularios


Pestañas

Sección 1

Sección 2

Sección 3

Barra de navegación

Alertas

Success

Warning

Error

Info

Barra de progreso

6. Componentes avanzados

Algunos componentes un poco más avanzados que también se usan a menudo en las aplicaciones web:

Ventana modal

Abrir ventana modal

Tooltip

Texto con tooltip

Acordeón

Contenido del panel 1

Contenido del panel 2

Carrusel

7. Referencias

5. Conclusiones.

La utilización de Twitter Bootstrap aporta múltiples ventajas que ayudan y facilitan la construcción de interfaces web ahorrando mucho esfuerzo.

Todo el que haya hecho una web ‘responsive’ sabe el trabajo que lleva que se vea bien en múltiples dispositivos. Con Twitter Bootstrap ya tenemos bastante camino recorrido ya que nos aporta funcionalidades para esta tarea. Y todo ello ha sido concebido para que sea fñcil de usar y compatible con un gran número de navegadores.

Espero que te haya sido de ayuda.

Un saludo.

Juan

1 Comentario

Dejar respuesta

Please enter your comment!
Please enter your name here