Visualizzazione dei risultati da 1 a 4 su 4
  1. #1

    visualizzazione immagine + testo

    Ciao a tutti ho questo problema:

    codice:
    <div id="contenitore">
    
    <div class="textimage">
        [img]immagine.jpg[/img] Testo che viene stampato a sinistra dell'immagine
    </div>
    
    <div class="cleaner">
    questo è il testo che che viene stampato sotto l'immagine ed il suo testo scritto a destra.
    il problema è che il testo inizia molto spazio sotto all'immagine. (immagine alta 200px)
    </div>
    
    </div>
    questo il css:

    codice:
    .textimage img{
    float: left;
    margin-right: 5px;
    }
    .cleaner{
    clear: left;
    margin-top: 0px;
    }
    come posso risolvere?
    aquatimer2000

  2. #2
    ho capito, forse ho trovato il problema,

    il div "contenuto", ha alla sua sinistra un altro div (<div id="menu">).

    il testo che viene stampato nel div "cleaner", inizia esattamente subito sotto alla fine del contenuto del div "menu"

    infatti l'opzione clear: left; mi fa proprio questo.

    che parametro devo usare perchè il testo del div "cleaner" venga visualizzato subito sotto il contenuto del div "textimage" ?
    Grazie ancora a tutti!
    aquatimer2000

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Il quesito non e` di facile soluzione.

    Come hai capito, il float agisce su tutta la larghezza della finestra, e non e` limitato ad un determinato contenitore.

    Occorre quindi trovare un escamotage per aggirare il problema.

    Ripartiamo dal codice HTML, che mi par di intuire e` fatto in questo modo (pero` ho aggiunto e tolto alcuni oggetti che pososno essere utili per risistemare):
    codice:
    <body>
      <div id="menu">
        ... menu ...
      </div>
      <div id="contenitore">
        [img]immagine.jpg[/img] 
        
    
    Testo che viene stampato a destra dell'immagine</p>
      </div>  
      <div class="cleaner">
        
    
    questo è il testo che che viene stampato sotto l'immagine ed il suo testo scritto a destra.
          il problema è che il testo inizia molto spazio sotto all'immagine. (immagine alta 200px)</p>
      </div>  
    </body>
    Anzitutto ho inserito ciascun testo dentro un

    : infatti nella programmazione semantica i testi non possono sare sparsi nei <div>. Inoltre gli oggetti

    possono avere uno stile proprio.
    Poi ho tolto il <div> che conteneva solo l'immagine: non e` necessario.

    Ora le possibilita` che vedo io per realizzare quello che vuoi sono due:
    1. trasformi uno o tutti gli oggetti principali (menu, contenitore, cleaner) in oggetti posizionati
    2. utilizzi sapientemente il clear sia left che right

    La soluzione 1 presenta delle difficolta` e delle incertezze sul rendering cross-browser che lo rendono sconsigliabile.

    Proseguo con la mia proposta della soluzione 2.
    codice:
    #menu {
      float: left;
      width: ...;     /* necessario definirla, meglio in em, che forse e` piu` versatile */
    }
    #contenitore {
      float: left;
      ...
    }
    #contenitore img {
      width: ...;
      height: ...;
    }
    #contenitore p {
      float: right;
    }
    .cleaner {
      clear: right;
    }
    
    ... se poi c'e` un footer, avra` bisogno di un clear: both; ..
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  4. #4
    provo il tuo suggerimento e ti faccio sapere !
    Grazie un bel po'!
    aquatimer2000

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.