La propiedad «clear:both» en un de los métodos utilizados cuando queremos hacer un nuevo salto de línea entre bloques con float… os sonará si maquetais en css.

Un ejemplo típico:

<style>
.contenedor{ border: 1px solid # 000; }
.bloque_izq{ float:left; width:50%; }
.bloque_der{ float:left; width:50%; }
.clear{ clear:both; }
</style>
<div class="contenedor">
    <div class="bloque_izq">mi texto...</div>
    <div class="bloque_der">mi texto...</div>
    <div class="clear"></div>
</div>

Si soleis utilizar esta práctica de crear un nuevo div «vacio» con la propiedad «clear:both»… os invito a usar una alternativa más pulida para «evitar usar div vacios en CSS», usar un elemento HR con la respectiva clase:

hr.clear {
	background: none;
	border: 0;
	clear: both;
	display: block;
	float: none;
	font-size: 0;
	margin: 0;
	padding: 0;
	overflow: hidden;
	visibility: hidden;
	width: 0;
	height: 0;
	}

Modo de uso:

<div class="contenedor">
    <div class="bloque_izq">mi texto...</div>
    <div class="bloque_der">mi texto...</div>
    <hr class="clear" />
</div>

Agradezco tu comentario 🤘