Se si utilizza un ‘float: right’, ne fanno la prima cosa sulla linea:
<div style="border: solid 1px red; text-align: center">
<div style="float:right; background-color: yellow">right</div>
<div style="background-color: yellow; float: left">left</div>
middle
</div>
Altrimenti si cade sempre nella prossima riga di testo.
ma perché !!!!!
(1) Perché una volta che hai iniziato a inserire il testo statico su una linea, hai una larghezza indeterminata per adattarla a un elemento fluttuato. Diciamo che ha scritto:
abc abc abc <div style="float: left">xyz xyz</div> abc abc abc
Ora immaginate di iniziare il ridimensionamento quella finestra verso il basso in modo che “abc abc abc” appena si inserisce sulla prima riga. Ora incontri un float e provi ad includerlo sulla linea in cui ti trovi. Ma non va bene: per adattarlo, dovresti avere "abc xyz xyz" sulla linea, facendo scorrere il rimanente "abc" alla riga successiva. Ma! Ora hai spostato il punto di inserimento del float lungo una linea, quindi il galleggiante deve scendere anche una linea. Ma! Ora la prima riga non è avvolta correttamente, perché c'è spazio per tre "abc", ma la linea è stata chiusa prematuramente per far posto a un float che si verifica effettivamente più in basso nella pagina ...
Lo standard CSS risolve questa empasse logica facendo un float su una linea con testo inline prima di aspettare la riga successiva.
(2) Perché questo è ciò che Netscape ha fatto con <img float="right">
molti, molti anni fa.
Così si vuole proprio sopra o al di sotto di sinistra? Non sono sicuro di aver capito la domanda. Hai una foto? –
Li voglio entrambi sullo stesso livello in verticale, quindi assomiglierebbe a: | right | middle | left |, all in a row. – morgancodes