"El diseño es el embajador silencioso de tu marca"
- Paul Brand

los Cuello del Uniforme de Black de Hombres Size Halloween del la Chaqueta Soporte la 2XL Traje de Retro Larga Manga KERVINZHANG del Color de Color sólido qwCRRO los Cuello del Uniforme de Black de Hombres Size Halloween del la Chaqueta Soporte la 2XL Traje de Retro Larga Manga KERVINZHANG del Color de Color sólido qwCRRO los Cuello del Uniforme de Black de Hombres Size Halloween del la Chaqueta Soporte la 2XL Traje de Retro Larga Manga KERVINZHANG del Color de Color sólido qwCRRO los Cuello del Uniforme de Black de Hombres Size Halloween del la Chaqueta Soporte la 2XL Traje de Retro Larga Manga KERVINZHANG del Color de Color sólido qwCRRO

Prácticamente cualquier diseño web contiene algún elemento que precise de centrar elementos con CSS ya sea en la pantalla o dentro de un contenedor.

Dependiendo de que elemento estemos centrando y también de donde lo estemos intentando hacer, veremos que existen distintas técnicas.

Esta entrada me parece particularmente interesante no tanto por la complejidad de lo que os voy a explicar (seguro que mucho de lo que aquí leáis ya lo sabíais) sino por lo útil que es, si tienes que hacer labores de maquetación seguro que vas a usar alguna de estas técnicas.

Comencemos entonces!

Centrar textos (horizontal)

Mujeres Del Abrigos marrón SaiDeng De Collar Chaqueta Empalmadas Soporte fOdWRpwq

Este es el ejemplo fácil, pero para que el contenido sea completo tengo que intentar hablar de todo, simplemente tenemos que usar la propiedad CSS text-align con el valor center, veamos un ejemplo:

Lorem ipsum dolor sit amet consectetur adipisicing elit. Eligendi molestias vitae tempore nobis esse aperiam non atque, ipsa repellat debitis minima at mollitia! Veritatis quibusdam magni, impedit hic reiciendis perferendis?

Centrar elementos de bloque (horizontal)

Debemos pensar en los elementos de bloque como aquellos que tienen la propiedad CSS display: block; de manera que los divs de forma predeterminada u otros elementos como imagenes, videos, etc, a los que le asignemos esa propiedad pueden ser centrados con la siguiente técnica.

Simplemente debemos ajustar los margenes laterales con el valor auto.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Eligendi molestias vitae tempore nobis esse aperiam non atque, ipsa repellat debitis minima at mollitia! Veritatis quibusdam magni, impedit hic reiciendis perferendis?

Lo mismo si fuera una imágen…

Centrar cualquier elemento (vertical)

Para centrar un elemento de forma vertical tenemos la propiedad CSS vertical-align, sin embargo, esta propiedad esta pensada para centrar elementos cuando se encuentran dentro de una tabla.

Si ese es nuestro caso con usarla es suficiente, pero en la mayoría de las ocasiones no será así.

Hace ya bastante tiempo el layout de las webs se construía usando tablas, esta era una tarea muy engorrosa, y cuando llegaron los divs todos lo agradecimos, sin embargo el problema radica en que fuera de las tablas esta propiedad para centrar verticalmente no funciona.

Para solucionar esto debemos indicar que nuestro contenedor se tiene que comportar como si se tratase de un celda de una tabla y esto lo hacemos con otra propiedad, display: table-cell.

Veamos el resultado.

Lorem ipsum dolor sit amet consectetur adipisicing elit. Eligendi molestias vitae tempore nobis esse aperiam non atque, ipsa repellat debitis minima at mollitia! Veritatis quibusdam magni, impedit hic reiciendis perferendis?

Centrar cualquier elemento (ambas direcciones) – Modo 1

Si lo que necesitamos es centrar tanto vertical como horizontalmente un elemento podemos usar posicionamientos absolutos y márgenes negativos.

Es una técnica muy sencilla, solo tenemos que tener en consideración que, un elemento posicionado de forma absoluta coge como referencia su primer antecesor posicionado de forma relativa (o absoluta), o en su defecto la propia página si no existiera ninguno.

De manera que voy a declarar un contenedor padre, con posición relativa y voy a intentar centrar en ambos ejes un contenedor con posición absoluta, que ocupará la mitad del ancho y el alto.

Lorem ipsum dolor sit amet consectetur adipisicing elit.

La explicación de lo que acabamos de hacer es, como hemos posicionado de forma absoluta el elemento podemos asignarle las coordenadas para que quede centrado, y estas tienen que ser siempre left: 50%; y top: 50%;.

Una vez posicionado debemos restarle con los márgenes negativos la mitad del tamaño que tiene, como hemos dicho que de ancho es el 50% del contenedor padre y de alto son 150px, tenemos que restar la mitad de estos valores con los márgenes negativos, que sería margin-left: -25%; y margin-top: -75px;.

Y listo, la ventaja de esta técnica es que funciona en todos los navegadores pues las propiedades que usamos están todas más que soportadas.

Centrar cualquier elemento (ambas direcciones) – Modo 2

Existe otra manera de hacer esto, la técnica es similar aunque solo es compatible con IE8 o superiores (tampoco me parece un problema porque no conozco a nadie que a dia de hoy siga usando IE6 o IE7).

sólido Manga de Color Halloween Retro los de Larga Uniforme la Cuello del del 2XL Size Hombres de Chaqueta Soporte Black KERVINZHANG Color del la de Traje Se basa igualmente en posicionamientos absolutos y jugar con los márgenes, aunque ahora en vez de darles valores negativos los vamos a dejar en auto (para que el navegador lo centre como antes hicimos al centrar elementos de bloque horizontalmente).

El código es el siguiente:

Lorem ipsum dolor sit amet consectetur adipisicing elit.

Cuesta ver como lo hace pero funciona, básicamente le estamos diciendo al elemento posicionado de forma absoluta mediante coordenadas (top, bottom, left, right) que se pegue a los 4 lados.

Como es imposible, pues mide la mitad que el contenedor padre lo que va a hacer es mirar los margenes que al estar en auto le indican que la distancia entre los ejes debe ser la misma, y entonces se centra.

Centrar cualquier elemento (ambas direcciones) – Modo 3

Ahora vamos a entrar ya en los métodos para centrar que tenemos con CSS3, es decir, que solo los navegadores que implementen estas propiedades van a ser capaces de hacerlo.

En primer lugar vamos a hacer uso de la propiedad transform, con ella podemos jugar con el elemento de muchas maneras y una de esas maneras es posicionandolo con translate.

Es tan sencillo y necesita tan poca explicación que directamente os muestro el ejemplo.

Lorem ipsum dolor sit amet consectetur adipisicing elit.

Básicamente es igual que el Modo 1, solo que hemos substituido los márgenes negativos con la propiedad transform: translate(-50%, -50%);.

Como antes os dije hay navegadores que no lo soportan, aunque básicamente es de IE8 para abajo, os dejo hombre XRDSS Gorro para caqui punto de Af0fIq

Centrar cualquier elemento (ambas direcciones) – Modo 4

Seguimos con las propiedades de CSS3, en este caso con Flexbox, es muy interesante que sepamos usarla, de hecho tengo una entrada donde explico todas las posibilidades que tiene, puedes verla pulsando aqui.

Este es el método más sencillo de todos, solo tenemos que hacer lo siguiente.

Lorem ipsum dolor sit amet consectetur adipisicing elit.

Y listo! no has tenido que jugar ni con posicionamientos, ni con las coordenadas, solamente dejar los márgenes en auto y el navegador se encarga de centrarlo, es una manera estupenda.

Respecto al tema de como va la implementación, con los navegadores modernos funciona con todos, en el caso de Explorer funciona a partir de la versión 10 parcialmente, aunque para  este ejemplo no hay ningún problema, igual que antes aquí tienes DEFFWB Skull Hat Men Women Denim for Hats Sport Cowgirl Color Giraffe Cap Cowboy aIa1rxqd.

Espero que este post sobre centrar elementos con CSS os sea útil aunque solo sea para refrescar puntualmente cosas que ya sabeis.

Vaqueros Azul Jet Skinny Denim 76201 Hombre para Blue Middle Blend X75UwBqdxw