09/04/2014
Ventajas y desventajas de los CSS resets
La técnica CSS reset consiste en sobrescribir los estilos CSS que imponen los navegadores por defecto para poder construir nuestros propios estilos desde cero. Ya conocimos los motivos para implementar esta técnica, pero ahora es momento de analizar sus ventajas y desventajas para evaluar su inclusión en nuestro próximo proyecto.
Ventajas
- Elimina las diferencias entre navegadores. Con un reseteo preciso y abarcador se elimina la mayoría de las diferencias de interpretación entre los browsers, ya que tamaños, márgenes, grosores, bordes y otros formatos son igualados a un estilo único y homogéneo. Ver: cross-browser testing.
- Mayor libertad. El reseteo nos brinda una hoja en blanco sobre la que podemos construir nuestros propios estilos sin tener que luchar contra los estilos del browser, que muchas veces son difíciles de identificar (y, por lo tanto, de modificar).
- Desarrollo más lógico. Una vez agregada la hoja de reset, el proceso final consistirá en agregar nuevos estilos en lugar de sobrescribirlos.
Desventajas
- Mayor esfuerzo. El CSS reset es un arma de doble filo: sólo nos ahorra tiempo en el caso en que no nos interese conservar los estilos por defecto. Sin embargo, hay estilos que sí puede interesarnos mantener, como por ejemplo las listas de elementos (con viñetas, indentación y otras características útiles «de fábrica»). De ser así, perderemos tiempo restaurando estilos en nuestra hoja.
- Código «sucio». Si se da el caso mencionado en el primer punto, la redefinición de estilos genera código CSS excesivo y difícil de comprender.
- Problemas de usabilidad. Algunos estilos a los que habitualmente no prestamos atención deben conservarse. Por ejemplo, quienes navegan con teclado y sin mouse, usando la tecla Tab para desplazarse, necesitan la propiedad CSS que remarca el enlace sobre el que están situados. La mayoría de los desarrolladores olvida redefinir esos estilos.
- Más peso. Agregar una hoja de estilos de reset agrega peso a la página, aumentando ligeramente su tiempo de carga.
Probablemente la mejor opción sea resetear sólo aquellos estilos que realmente nos causen problemas, y dejar que el browser se encargue de los demás. Si lo que se desea es homogeneizar la presentación de elementos entre browsers pero sin eliminar sus características distintivas, Normalize.css es la alternativa a elegir.
0