Ejercicio sobre la propiedad clear:both (float)

2.5
(2)

Publicado

Aviso importante web en obras

Es posible que el contenido que estás visualizando tenga un formato un poco raro o que se haya perdido algún contenido. Esto se debe a que en 2023/09 decidí renovar la página y con más de 1000 escritos el trabajo de irlos revisando uno por uno es agotador. Poco a poco iré corrigiendo todos los contenidos. ¡Gracias por la comprensión!

Ejercicio clear css

La propiedad float nos permite posicionar cajas a izquierda y derecha y hacer que el resto de cajas del documento web fluyan normalmente alrededor de la caja desplazada.

Se suele usar por ejemplo para rodear imágenes de texto.

También se usa mucho para maquetar.

La propiedad float pero, debe ir acompañada de la propiedad  clear:both | left | right;

El uso de clear en ocasiones es difícil de entender. Así que he preparado un ejercicio dónde se entienda bien su utilidad.

Sería interesante antes hacer el ejercicio que leyeras estas entradas.

A modo complementario, sería interesante contrastar este ejercicio con este otro para valorar la diferencia de maquetar con inline-block o float.

Entremos en materia.

Enunciado

Crea 8 cajas distribuidas según se muestra en la imagen y haciendo uso de la propiedad  float: left | right | both;
Ejercicio sobre la propiedad clear:both (float) 1
Sigue las siguientes especificaciones:

  • Las cajas de la primera fila tienen anchos de 33.33% cada una. El color utilizado es el #bb00bb.
  • La caja de la segunda fila tienen ancho del 100%. El color utilizado es el #252525.
  • La caja de la tercera fila tiene ancho del 33.33%. El color utilizado es el #6499fc.
  • Las cajas de la cuarta fila tienen ancho del 33.33% y no se apilan con las de la tercera fila. El color utilizado es el #ff0064.
  • Todas las cajas tienen una altura de 200px.
  • Las separaciones que se observan entre cajas son en realidad un border de 5px de color #ffffff.

Haz un uso apropiado de la propiedad clear dónde lo consideres oportuno.

Solución del ejercicio

Para resolver este ejercicio podríamos escribir clear:left; sin embargo la solución presentada es con que clear:both;es lo más habitual.

La gracia del ejercicio es que las 3 últimas cajas se apilan con la penúltima fila y que al escribir la propiedad clear:both; conseguimos el dibujo deseado.

Muy importante ten en cuenta que no hay margins.

De usar margins no podrías garantizar que el ancho total de la suma de todas las cajas sea el 100%. El margin no es incluido por la propiedad box-sizing.[vc_custom_heading text=»¿Como queda el documento html?» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]

<!DOCTYPE html>
<html>
<head>
	<title>Propiedad clear</title>
	<meta name="author" content="francesc ricart"/>
	<meta charset="utf-8">
	
	<style>
		/*Instrucciones css*/
	</style>

</head>
<body>
<!-- div.caja-$*8 -->

<div class="caja-1">33.33%</div>
<div class="caja-2">33.33%</div>
<div class="caja-3">33.33%</div>

<div class="clear"></div>

<div class="caja-4">100%</div>

<div class="clear"></div>

<div class="caja-5">33.33%</div>

<div class="clear"></div>

<div class="caja-6">33.33%</div>
<div class="caja-7">33.33%</div>
<div class="caja-8">33.33%</div>

</body>
</html>

[vc_custom_heading text=»¿Como queda el documento css?» font_container=»tag:h3|text_align:left» use_theme_fonts=»yes»]

*{
			margin:0;
			padding:0;
			box-sizing:border-box;}

		.clear{
			clear:both;
		}
		
		div[class*="caja-"]{
			height:200px;
			padding:50px;
			float:left;
			border:5px solid #fff;
			color:#fff;
			font-size:32px;
		}	

		.caja-1,.caja-2,.caja-3{
			width:33.33%;
			height:200px;
			background-color:#bb00bb;
			border:5px solid #fff;
		}
		.caja-4{
			width:100%;
			background-color:#252525;
		}	
		.caja-5{
			width:33%;
			background-color:#6499fc;
		}
		.caja-6, .caja-7, .caja-8{
			width:33.33%;
			background-color:#ff0064;
		}

Si juntamos todas las piezas resolvemos el ejercicio.¡Hola!

Querido lector,

Con este ejercicio hemos practicado la float y la propiedad clear.

¿Te ves con ánimo de maquetar la estructura de una página web?

¡Si te ha gustado este contenido te animo a seguirme en mi perfil de empresa de Linkedin!

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *