Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16
  1. #1
    Utente di HTML.it L'avatar di nourdine
    Registrato dal
    Nov 2005
    Messaggi
    1,130

    più div nella stessa "riga"

    quando uno fa 2 div automaticamente quello che viene secondo viene visualizzato sotto il primo giusto?

    bene!

    allora io vorrei sapere come si va ad avere + div sulla stessa linea in modo da fare tipo una serie di rettangoli in fila all'interno di un contenitore comune. tipo per fare una barra di navigazione in cui a ogni div interno al contenitore comune corrisponda un link

    cheers!

    adesso vado a letto. domattina mi aspetto di trovare mille risposte smart!

    nite cats

  2. #2
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,965
    Fai qualche prova con

    float:left;

  3. #3
    Infatti. Per "allineare" 2 o più div uno di fianco all'altro, basta usare float: left su tutti (oppure float: right, anche se in questo caso il primo div che è scritto nel codice della pagina sarà quello che apparirà più a destra).

    L'elemento div, come anche p, h1, h2, ecc. è un elemento a livello di blocco. Gli elementi a livello di blocco si dispongono per loro stessa natura uno sotto l'altro (alcuni come p e h1 hanno anche un margine superiore e inferiore intrinseco).

    Tuttavia, se devi realizzare qualcosa come un "menu orizzontale", ti consiglierei di utilizzare una lista non ordinata (<ul>). Ogni link sarà contenuto in una coppia[*]... e ti basterà utilizzare float: left o display: inline sull'elemento li per fare in modo che la lista si disponga orizzontalmente (devi anche annullare i margini e i padding degli elementi ul e li). Per creare menu di questo tipo le liste sono molto più corrette che una serie di div affiancati, perché mantengono il significato semantico dei link che compongono il menu (sono una "serie" di link, quindi la lista è la struttura (X)HTML più corretta per rappresentarli).

  4. #4
    usa una <table> come contenitore dei <div>

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,965


    No, non farlo.
    Usa un div come contenitore dei div.

    Perchè usare le tabelle per il layout, quando servono per contenere dati?
    E' semanticamente scorretto.

  6. #6
    se usi <div> risolvi il problema iniziale ?? (con float:left?)

    c'è una discussione in corso :

    Tabella sta a layout come panna sta a trichechi


    mi piacerebbe approfondire...

  7. #7
    Utente di HTML.it L'avatar di miki.
    Registrato dal
    Oct 2004
    Messaggi
    1,918
    <div>HEADER</div>

    <div style="width:50px;float:left">LINK</div>
    <div style="width:50px;float:left">LINK</div>
    <div style="width:50px;float:left">LINK</div>
    <div style="width:50px;float:left">LINK</div>
    <div style="width:50px;float:left">LINK</div>

    <div style="clear:both;width:100%">FOOTER</div>


    ovviamente quando i div non c'entrano più sulla riga vanno a capo. Puoi fare lo stesso con un elenco puntato

    <div>HEADER</div>
    <ul>
    <li style="width:50px;float:left">LINK
    <li style="width:50px;float:left">LINK
    <li style="width:50px;float:left">LINK
    <li style="width:50px;float:left">LINK
    <li style="width:50px;float:left">LINK[/list]
    <div style="clear:both;width:100%">FOOTER</div>

    ovviamente puoi sistemare e semplificare il tutto con i fogli di stile.

    L'uso delle tabelle credo che sia superfluo in questo caso

    PS
    puoi anche dare la larghezza in un formato relativo (em o %)in questo modo si adatteranno automaticamente all'aumentare o diminuire del carattere.
    You cannot discover new oceans unless you have the courage to lose sight of the shore

    Caro Dio, quando nelle preghiere ti chiedevo di far morire quel pedofilo truccato, liftato,mentalmente disturbato e di colore indefinibile, non intendevo Michael Jackson.

  8. #8
    La convenienza ?

    <div>HEADER</div>
    <table> <tr>
    <td>LINK</td>
    <td>LINK</td>
    <td>LINK</td>
    <td>LINK</td>
    </tr></table>
    <div style="clear:both;width:100%">FOOTER</div>

  9. #9
    Utente di HTML.it L'avatar di miki.
    Registrato dal
    Oct 2004
    Messaggi
    1,918
    Originariamente inviato da sebastiano.z
    La convenienza ?

    <div>HEADER</div>
    <table> <tr>
    <td>LINK</td>
    <td>LINK</td>
    <td>LINK</td>
    <td>LINK</td>
    </tr></table>
    <div style="clear:both;width:100%">FOOTER</div>
    che se voglio cambiare il layout e rendere il menu da orizzontale a verticale, ci impiego un attimo.
    Che come l'hai pensato te gli dai già una struttura grafica che non può essere cambiata (praticamente quel menù sarà per forza orizzontale), mentre utilizzando i div la grafica gli viene data tramite i css, e quindi puoi fare 1 sola struttura della pagina e più css a seconda dei mezzi con cui viene vista la pagina (a schermo, stampata, mobile, etc).

    E' un fatto di abitudine, le tabelle sono troppo restrittive, con i div ci fai veramente quello che vuoi.
    You cannot discover new oceans unless you have the courage to lose sight of the shore

    Caro Dio, quando nelle preghiere ti chiedevo di far morire quel pedofilo truccato, liftato,mentalmente disturbato e di colore indefinibile, non intendevo Michael Jackson.

  10. #10
    Utente di HTML.it
    Registrato dal
    Feb 2003
    Messaggi
    1,965
    Originariamente inviato da sebastiano.z
    se usi <div> risolvi il problema iniziale ?? (con float:left?)
    Sì, ovviamente con i css appositi.


    Inoltre, scusami tanto, se uso la tabella come contenitore, che problemi mi faccio nell'usare le tabelle per il layout ?
    Cioè, abbiam fatto 30 (il contenitore <table>), facciam 31 (tutto il layout con le tabelle).

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.