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

    centrare verticalmente un div in modo intelligente

    ciao! allora:

    se ho un <div class=A> dentro un'altro, diciamo <div class=B>, allora per centrare orizzontalmente A rispetto a B faccio faccio uno stile tipo:

    .A (...;
    ...;
    margin-left: auto;
    margin-right: auto;
    ...;
    ...;
    )


    se invece voglio centrarlo in senso verticale che c**** devo fare??????????

  2. #2
    Utente di HTML.it L'avatar di floyd46
    Registrato dal
    Feb 2002
    residenza
    Apulia
    Messaggi
    2,641

    Re: centrare verticalmente un div in modo intelligente

    ciao
    1)innanzitutto non credo ci sia bisogno di inc*****si;
    2)ci sarebbe da studiare i CSS per bene;
    3)se conosci l'altezza del primo contenitore (per esempio A) e vuoi mettere un altro al suo interno (per esempio B), prova a dare i margini a B, in modo tale che sia equidistante al top ed al bottom), oppure dare il padding ad A (stesso principio del margin).
    Floyd
    "Le persone che realizzano layout con tabelle annidate, spacer gif o che ignorano l'accessibilità non possono più definirsi professionisti." Andy Clarke
    --------------------------------

    www.extrowebsite.com

  3. #3
    Utente di HTML.it L'avatar di nuky
    Registrato dal
    Oct 2001
    Messaggi
    1,053
    Non so se ci sono metodi migliori, ma io faccio così:

    Posiziono il div al centro del contenitore mettendo position:relative; top:metà dell'altezza; left:metà della larghezza;.

    Poi lo sposto con i margin in alto per la metà della sua altezza e a sinistra per la metà della sua larghezza.
    codice:
    <html>
      <head>
        <style>
          #div1 {border:1px solid red; width:600px; height:600px;
                 padding-left:50%; padding-top:50%;}
          #div2 {border:1px solid blue; width:200px; height:400px;
                 margin:-200 0 0 -100;}
        </style>
      </head>
      <body>
        <div id="div1">
          <div id="div2"></div>
        </div>
      </body>
    </html>
    Edit:
    No, è un po' che non lo faccio, come avevo postato non era un metodo furbissimo.
    Il div interno lo si centra mettendo il padding left e top al 50% nel contenitore.
    - "E' un messaggio. E' di Svarion, della terra di Merdor!"
    - "Busto Arsizio?"
    - "Terrazzo, sgabello, formaggio. Borraccia blu, ca**o di gomma e... CANNUCCIA!"
    - "Ca**o dici? C'è scritto «frocio chi legge»!"

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.