CSS float: consideraciones y consejos para una buena macetes diseños en la Web
11 de julio de 2008 11 comentarios
Entender el correcto funcionamiento y la dinámica de la propiedad CSS "flotar" es fundamental para el desarrollo y la estructuración de diseños para la buena Web. Aprenda a utilizar correctamente flotar en sitios web y proyectos web, en general, es de extrema importancia porque, básicamente, es a través de las normas usando CSS float es posible que componen diseños sin el uso de tablas (retroalimentación), que trae muchas beneficios tales como la economía en el tiempo de carga, se pongan en venta las con los estándares de W3C y, por ende, un aumento de rendimiento en general.
¿Qué es el "flotador"?
Float es una propiedad de CSS posicionamiento. Si estás familiarizado con los proyectos para los medios de comunicación impresos, se puede pensar, de una manera similar, una imagen en un diseño donde el texto circundante cuando sea necesario.

En cuanto a diseño de páginas web, una imagen insertada es todavía parte de la corriente de la página. Esto significa que si se introducen cambios en el tamaño o si los elementos a su alrededor cambio, la página será automáticamente reajustado ( "reflujo"). Esto difiere de la página en la que los elementos están posicionados de manera absoluta. Elementos colocará de forma absoluta se eliminan de la corriente de la página web. Elementos posicionados absolutamente no afectará a cualquier otro elemento de la página, ya sea que estén en contacto, o no.
Para las carrozas que se utilizan?
Además de ejemplos sencillos, como colocar una foto al lado de un bloque de texto, flotadores se utilizan para crear diseños para la web.

Flota también son útiles para el diseño de cuerpos pequeños. Véase, por ejemplo, esta parte de una página web:

Este tipo de diseños se pueden manipular usando el posicionamiento absoluto dentro de la posición relativa, pero los elementos que flotan (CSS propiedad "float") son más flexibles. Vamos a suponer que el tamaño de la imagen de un avatar necesidad de ser cambiado. Con flotadores, la caja puede ser reestructurada para dar cabida a un mayor tamaño, como un posicionamiento absoluto crear problemas:

Problemas con los flotadores
"Flota son frágiles". Ellos están llenos de "retrocesos" y transversales navegador peculiaridades. Tal vez la más importante es la necesidad de "claro" flotadores (CSS propiedad "claro") en algunas situaciones. En primer lugar, ver algunos ejemplos de por qué algunos flotadores deben ser "limpios" y, a continuación se explica cómo hacer esto "limpieza".
Arrumar el flotador para ajustar la altura del elemento padre
Elementos que contienen elementos de flotación no calcular su altura, como es de esperar. De hecho, si el padre sólo elemento contiene elementos flotadores, navegadores hará que el punto en cero (como si se tratara de "altura: 0").

Si usted da un "claro" antes de cerrar la etiqueta del elemento padre, que repararlo.

Borrar el flotador para iniciar una nueva línea
Digamos que usted tiene una serie de elementos flotantes.

Digamos que usted desea crear una pausa en esta red de elementos con el fin de iniciar una nueva línea. Porque, usted sabe, iss tiene sentido sólo visualmente hablando.

Al dar "claras" sólo a la izquierda oa la derecha
Los dos ejemplos anteriores son ejemplos de cómo el uso genérico de "claro" a la "limpieza", o dan una clara tanto a la derecha, a la izquierda. Porque flotadores pueden ser tanto derecho, como la izquierda, y se puede hacer, evidentemente, sólo una carroza hacia la izquierda o la derecha justo. Esto puede ser útil cuando se hace la limpieza de ambas partes ( "claro: tanto") es problemático.

En caso de que se ha dado un claro en ambos lados ( "claro: tanto") en el ejemplo anterior, la segunda imagen habría sido empujado hacia abajo, es decir, hasta el bloque de texto.
Diferentes técnicas de Borrar
Como todo en la CSS, más que una manera de hacer esto.
El uso de "claro" exactamente donde usted necesita
La propiedad CSS "claro" es exactamente lo que dice la caja. " El problema reside en dónde y cómo aplicar un elemento a la página con claro derecho de propiedad.
- Aplicar "claro: tanto" el tema inmediatamente después de que usted necesita para ser claro. Tomemos un ejemplo en la parte superior de una página web con diseño de la cabecera y el pie de ancho total, con contenido principal y una flotante de la izquierda lateral a la derecha. Con el fin de que la nota aparece en el lugar correcto, usted debe borrar la flota antes que él. En este ejemplo sencillo, puede solicitar aplicará claro: tanto la parte más baja de div.
Esta técnica es maravilloso, porque funciona bien sin necesidad de códigos superfluo. Sin embargo, a veces falla a sitios web dinámicos. Y si, por ejemplo, usted tuvo que añadir un nuevo elemento de página, por encima de la parte inferior y, por tanto, por debajo de los otros contenidos de la página? Ahora tiene que dar un claro elemento en este lugar de la parte inferior. A menudo es más fácil pensar en que necesitamos una más que clara en lo que debe ser uno de los elementos es claro.
- Aplicar "claras" y claro el flotador en el vacío. DIVs son muy buenas porque, generalmente, usted no tiene el estilo aplicado a ellos (como en un elemento de párrafo "p" por ejemplo) y no tienen ninguna característica especial (como un "<br />"). En caso de que tenga que borrar el flotador, escribe: <div style="clear: both;"> </ div>. Uso en línea estilos no es muy "atractiva", es mejor hacer una clase "clara" y crear una regla que hace que la limpieza de la balsa, pero eso es sólo una cuestión de gusto.
El método de vacío DIV:
... Parte del elemento flotante. </ Div> <div class = "clear"> </ div> <p> ... ahhhh, he recibido un "claro" </ p>
CSS:
div. claras (claro: ambos;) "Overflow: auto" en el elemento matriz
Es difícil explicar por qué, pero la aplicación de la CSS propiedad "overflow: auto" en el elemento matriz hará que su altura se calcula correctamente. No se ampliará para abarcar la totalidad carrozas (carrozas), en lugar de "a palo". Esto puede ser muy útil y es muy clara ", pero tiene algunos inconvenientes. El mayor de ellos es que, a menudo, tiene sentido utilizar el CSS norma de la matriz elemento. Piense en las veces en que usted debe dar una clara en varios elementos que tienen un padre en común, en cuyo caso no se vai ayuda.
Otro problema es que puede que quiera usar la propiedad "overflow" para otros fines. Y si quieres ocultar el desbordamiento de una escisión, en particular? No se puede. Usted tendrá que incluir la división con otra división para hacerlo.
El hack "clearfix" (dejar claro que la pseudo-clase "después de")
Aunque de edad, el artículo positioniseverything sobre el uso de la pseudo-clase CSS para dejar en claro si todavía es válida. Explicar con rapidez, la técnica consiste en añadir un poco de sustancia después de que el elemento. Este bit de contenido (una zona, por lo general) está dejando claro el trabajo, pero se oculta de los visitantes.
Aquí hay un código, que se aplica en una clase CSS para cualquiera de los elementos que necesita un claro:
/ * Esto tiene que ser en primer lugar porque FF3 es ahora el apoyo a este * /. Clearfix (display: inline-block;). Clearfix: después (contenido: ""; pantalla: bloque; altura: 0; claro: ambos; font-size : 0; visibilidad: oculto;) / * Oculta de IE-mac \ * / * html. Clearfix (altura: 1%;). Clearfix (display: block;) / * Fin de ocultar IE-mac * / El artículo citado advertencia de que la técnica es cada vez de edad y ya habla de "overflow: auto". Yo no comparto la opinión de que la tecnología se está volviendo obsoleta. Esto es completamente diferente de otras técnicas de desbordamiento. Con "clearfix," le aplicará a la clase en su propio elemento, no el elemento padre. Esto significa que puede utilizar aún cuando no se trata de un padre, esto significa que usted puede seguir utilizándolo, incluso si hay un elemento que tiene sentido, así como aplicarlo preguntándose dónde el elemento necesario para flotar una clara.
Otro problema con flotador: empuja hacia abajo ( "pushdown")
Esta cuestión merece una atención especial, porque las personas a menudo tienen problemas con cuestiones de "tirones". Mirando de nuevo el ejemplo a principios de este artículo, la división del contenido principal flota a la izquierda de la división de la barra lateral. Se trata de una estructura común en muchos blogs.
Ya sea fijo o fluidos, tanto DIVs tienen una anchura especificada. Ellos, supuestamente, se comportan como elementos flotantes, o si un elemento dentro del área del contenido principal es el ancho superior a todo este ámbito (por ejemplo, una imagen muy grande), si simplemente se extiende a través de cobre y todo lo que sea " De ninguna manera. " La forma en que trata a IE6 que es muy diferente. Si un elemento es mayor que la anchura de su elemento, IE6 la barra lateral vai ser simplemente empujó hacia abajo ( "pushdown"), rompiendo por completo el diseño.

¿La solución? La mejor solución es no colocar elementos con anchura superior a la de su elemento. Para proteger mejor, y si su diseño funciona de forma diferente (no especifica las alturas), puede trabajar con "desbordamiento: ocultos" para ocultar algo que es necesario. Sin embargo, otra solución, que el uso de posicionamiento absoluto a la posición de lateral más directo. Recuerde, sin embargo, que la posición absoluta del elemento de corte de la corriente de la página - algo a tener en cuenta.
Desde hace algún tiempo salió en una lista Aparte de un artículo sobre cómo hacer una "falsa" posicionamiento absoluto, Faux Posicionamiento absoluto, que es una lectura interesante y aborda una nueva técnica de diseño que trae muchos beneficios de la posición absoluta, manteniendo el flujo de la página y no ir en contra de la "fragilidad" de los elementos que flotan.
"Peculiaridades" sobre los elementos de flotación
Otra cosa para recordar cuando se trata de IE6 es que si usted solicita un margen (CSS "margen") en el mismo sentido que el flotador ( "la izquierda" o "derecha"), se debe duplicar el margen.
Para IE7, hay un pequeño truco en su peculiar manera que no márgenes más bajos (CSS "margin-abajo") en los niños elementos dentro de objetos flotantes.














Felicitaciones por este mega-artículo Tárcio! Mis estudiantes les encantará!
Excelente experiencia Tárcio. Fantástico el artículo amigão! : D
@ Gevã Schaefer
Legal, Gevã! Entonces a mí lo que pensaba! ;-)
@ Paulo Faustino
Gracias, Pablo, pero los créditos van a Chris Coyier, yo sólo traducir rsrs…… Abraços!
Mucho tutorial y felicitaciones por blog, es realmente muy bueno. ^ ^
Abraços!
@ Cayo alias Medeiros. yogodoshi
Gracias por sus amables palabras y por la referencia que hizo al desarrollo web a tu blog! He firmado el feed del blog yogodoshi de "conmutación de figuritas"! ;-)
Abraços!
Buen artículo:)
Soy consciente del problema y trabajar sobre esta cuestión. Pensé que a fuera y no ve gran parte de la materia, será más fácil con el culto con este puesto, felicitaciones:)
@ Bfms
Gracias para su examen, Bruno! Realmente fue mi intención de ayudar a traducir este excelente artículo sobre CSS carrozas.
Abrazo a aparecer!
a los problemas en mi sitio de colocación. Si usted me puede ayudar agradecería.
Patrick @
Hola, todo bien? ¿Cuál es el problema que tú eres, colega?
Trackback el 11 de julio, 2008
Trackback el 11 de julio, 2008