------------- --------------------------------------------------
| some text | | some more text, sometimes more, sometimes less |
------------- --------------------------------------------------
|<------------------------- 100% width ----------------------->|
Quindi ho il layout di cui sopra. La casella di sinistra dovrebbe essere sempre la più piccola possibile, mentre quella di destra dovrebbe occupare lo spazio rimanente. Questo normalmente andrebbe bene con uno float: left
.CSS: due campi, sinistra una larghezza flessibile, a destra uno spazio rimanente
Il problema è che la casella giusta può crescere un bel po ', mentre la sinistra è praticamente garantito per essere molto piccolo (ancora varia in termini di dimensioni, quindi ha bisogno di essere flessibili). Se la casella giusta cresce, ho bisogno di comportarsi in questo modo:
------------- --------------------------------------------------
| some text | | quite a lot of text, actually, really quite a |
------------- | bunch of it, you could say this is really |
| quite a heck of a lot of text |
--------------------------------------------------
Se io uso un float:left
, la casella di destra si schiererà-break sotto la casella di sinistra se contiene molto testo:
-------------
| some text | (not good)
-------------
----------------------------------------------------------------
| quite a lot of text, actually, really quite a bunch of it, |
| you could say this is really quite a heck of a lot of text |
----------------------------------------------------------------
Se io uso un tavolo per entrambi, invece, la casella di sinistra possa crescere inutilmente se entrambi contengono pochissimo testo:
(not good)
-------------------------------- -------------------------------
| some text | | not that much text |
-------------------------------- -------------------------------
Inoltre, la casella di sinistra non dovrebbe linea-break. Ma dal momento che contiene alcuni elementi HTML, non solo testo puro, un no-wrap
non sembra funzionare in tutti i browser.
Qual è una buona soluzione a questo problema?
EDIT
In realtà non è terribilmente importante che la casella di destra occupa la larghezza residua, solo che è sempre rimane agganciato al lato destra della casella a sinistra.
Sei costretto ad avere la casella a sinistra fuori dagli schemi nel html – Stobor
@Stobor: No, l'HTML è perfettamente flessibile. – deceze