CSS vs Tablas

Comments     Date Arrow  May 7, 2008 at 10:29pm   User  by Gonzalo Arreche

es un tema que no es tan nuevo en realidad, maquetar con tablas o con CSS ?.. Comunmente se “ve mejor” a los diseñadores que maquetan con CSS y no con tablas, ahora bien, a mi modo de entender, es posible hacerlo utilizando ambas cosas, y con 100% de estandarización, ni la W3C ni nadie ve a las tablas como no-estándares ni mucho menos.
Cual es el problema entonces ?.. No tengo idea, pero igual voy a opinar..
Soy programador web, y SE lo que es programar un sitio que fue maquetado 100% con tablas, tantas tablas que el resultado era exageradamente grande, y tardaba BASTANTE en cargar, y no solo eso, los dolores de cabeza que esto producía al intentar programarlas y modificarlas, donde se usaban tablas hasta para poner espacios entre un botón y un icono, por ejemplo, o cuando intentas repetir cierta porción (si quieres poner listados, por ejemplo) y tienes que tabular cada una de las tablar y celdas para ver donde empiezan y donde terminan y que es lo que tienes que repetir, como armar los paginadores, etc, etc, etc…
Fue entonces que los diseñadores con los que trabajaba a menudo, decidieron comenzar a maquetar con CSS, aqui SI empezaron los problemas, tantos, como que si cambiabas una frase que estaba “como muestra”, por la real y no eran del mismo largo (cosa que es casi obvia que pase), todo el sitio se desarmaba.. y creo no estar exagerando. A medida que los diseñadores descubrían estas cosas y aprendían otras cosas, esto se solucionaba.

Bien, aca es cuando comienza la discución CSS o tablas ?.. veamos, las tablas son elementos nativos de HTML, es decir, podemos mostrar datos en forma de una tabla (como una hoja de calculos) sin complicarnos la cabeza para nada, y es estándar, porque no usarlas ? En su lugar, muchos diseñadores utilizan div’s medidos y posicionados mediante CSS, desde mi punto de vista, no parece buena idea hacer eso, y a continuación pongo algun ejemplo..
Me pasó una ves con una administración, donde en la sección donde se muestran los datos, se emuló una tabla con div’s y CSS, se veia muy bonito, bien ordenado, etc, hasta parecia una tabla !, tenía los headers con los nombres de los datos, los cuales no recuerdo exsactamente, pero supongamos que era “imagen, nombre, correo”, en un listado de usuarios, ahora bien, los usuarios no tenían imagen, y debía mostrar tambien, la página web, y una columna con las acciones (editar, borrar…), tuve que hacer malabares para poder cambiar eso, modificar la hoja de estilos, y dedicar algunas horas a ver porque no se veía de la misma forma en todos los navegadores, ahora bien, porque no usar en este lugar una tabla nativa ?, me parece que se nos está llendo la mano con el fanatismo.. y para peor nos complican a los programadores, los cuales no debemos (deberíamos) preocuparnos por el diseño (me prometí poner un post sobre eso, y lo voy a hacer en breve).

Mi conclusión: Las tablas son para mostrar cosas que se deben mostrar como tablas, y no para separar cosas, o abusar de ellas, un buen diseñador, debería saber identificar cuales son los lugares en los que se deben usar tablas y en cuales no.
Los elementos estan para usarlos para lo que fueron creados, y no emularlos con otros, una de las ventajas de hacer esto, es la accesibilidad, cada navegador muestra los elementos como mejor le convenga y podrian ser configurados por sus usuarios para hacerlo como mejor le sirva, uno de estos ejemplos son las personas con discapacidades o problemas, tanto motrices como visuales, el navegador no tiene como saber que se quiere mostrar una tabla, si no se usa una tabla, por lo tanto, no puede ayudar a su usuario en este sentido.

Tagged   accesibilidad · bobadas · web