2010-02-07 11 views
14

Tengo un diseño básico donde el cuerpo div se establece en un ancho específico. Y con los márgenes izquierdo y derecho se establecen en automático. Resultando en que el div está centrado.CSS - ¿Posicionamiento absoluto o flotación?

Ahora, cuando se trata de posicionar todos los subelementos dentro de este div, ¿es mejor usar posicionamiento absoluto o coordenadas fijas? Estos subelementos son básicamente columnas de texto, algunas imágenes y algunos títulos. Descubrí que al dejarlos todos a la izquierda, se apilan unos detrás de otros. Que es básicamente lo que quiero. Pero, ¿sería mejor especificar las coordenadas? Me encontré con un pequeño error de margen común con IE que ves. Y sé que el posicionamiento absoluto lo arreglaría. ¿Pero sería eso una solución sucia?

Es decir, el diseño en sí es líquido en algún sentido. Pero el cuerpo div tiene su ancho. Entonces los subelementos no se moverán independientemente de la resolución.

Respuesta

14

Nota: el error de margen en IE también puede ser "reparado" envolviendo el div con un margen en un div sin margen, y flotando ese div externo.

En cuanto a absoluto vs flotante: sugiero que eche un vistazo a this page, que parece un buen resumen, y pregúntese si alguno de los contras levanta una bandera roja para usted.

Yo personalmente usaría el posicionamiento absoluto si todos los contenidos del div son estáticos, y flotan si algunos son dinámicos. Pero esa es una respuesta subjetiva.

+1

Ok, entonces no estaba pensando demasiado, ¿eh? :) Creo que me quedaré con el posicionamiento absoluto esta vez. :) –

+0

Según la política de StackOverflow, sería genial si pudieras resumir lo que está en el enlace que diste – Baumr

1

No veo ningún problema con el uso del posicionamiento absoluto. Una posible desventaja sería que su hoja de estilo sería un poco más difícil de mantener, porque tendría anchos y posiciones especificadas. Si tuviera que cambiar el ancho de cualquiera de sus columnas en el futuro, tendría que actualizar el valor del píxel en 2 lugares. IMO usando float y margin sería más fácil de modificar en el futuro.

Cuestiones relacionadas