Elementos en linea no es igual a elementos que flotan. Por lo que esta afirmación:
Cita: siendo <span> dos elementos en linea, que flotan uno al lado del otro por defecto
es errónea.
Y no están por defecto uno a la izquierda y otro a la derecha. Están uno al lado del otro.
Para lo de limpiar el float tendrás que poner algo de código.
Lo de limpiar el flotado, se hace para que el elemento padre tome la altura de sus hijos, ya que al estar flotados, no hacen al padre crecer en altura.
Hay otra técnica para solución eso, que es añadir al elemento padre un overflow con un valor de auto o hidden. También existe otra solución llamada
Micro Clearfix. Esta última suele ser la más recomendable porque la del overflow a veces puede crear otros problemas.