Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 16

Discussione: CSS Trucchetto per div

  1. #1

    CSS Trucchetto per div

    Allora, siccome ho notato che, se si crea un box, poniamo centrato e vi si aggiungono dei padding-left e dei padding-right, la dimensione orizzontale varia a seconda dei browser che la interpretano un po' come gli va (come sappiamo secondo gli standard la dimensione totale dovrebbe essere data da margin+border+padding+width, ma per explorer e opera non è così).
    Ho escogitato questo trucchetto per far si che la larghezza di un blocco rimanga tale per tutti i browser.
    Vorrei mi diceste che ve ne pare e se vi sembra corretto.

    Allora.

    Poniamo che il block tag <div> in questione sia associato alla classe .box e posto all'interno di una casella "contenitore" (centrata e che contiene sopra e sotto altri elementi) e che ne occupi tutto lo spazio.
    A questo punto do un padding top e bottom al .box, e un margin left e right al .textarea.

    <style type="text/css">
    body {
    padding: 0px;
    margin: 0px;
    text-align: center;
    }
    #contenitore {
    width: 500px;
    background-color: #000000;
    margin: 30px auto 30px;
    }
    .box {
    background-color: #CCCCCC;
    margin-bottom: 4px;
    padding: 4px 0px 4px 0px;
    }
    .textarea {
    color: #000000;
    background-color: #FFFFFF;
    text-align: left;
    margin: 0px 4px 0px 4px;
    }
    </style>

    ---

    <div id="contenitore">
    <div class="box">
    <div class="textarea">AREA TESTO</div>
    </div>
    <div class="box">
    <div class="textarea">AREA TESTO</div>
    </div>
    </div>

  2. #2
    il margin non c'entra col width e non dà problemi nel box-model

    il comportamento dei browser dipende dal doctype

    il metodo più semplice è dare padding e border a un elemento annidato o usare !important

    .box {width:320px!important;
    width:300px;
    padding:10px
    }
    4 pag. x il forum:l'ospite ora ha solo link sponsorizzati, valli a capire-GommaLayout! Agg. 25 agosto 2004)-Molla&Collano privati tecnici, per favore

  3. #3
    Utente di HTML.it L'avatar di Marcolino's
    Registrato dal
    May 2003
    residenza
    Udine
    Messaggi
    3,606
    Non ho capito dove sta il trucco :master:

  4. #4
    Utente di HTML.it L'avatar di Sgurbat
    Registrato dal
    Nov 2002
    Messaggi
    1,732

  5. #5
    Utente di HTML.it L'avatar di sko
    Registrato dal
    Jun 2003
    Messaggi
    273
    div.prova {width: 250px; \width: 260px; w\idth: 250px;padding: 0 10px}

    io dalle guide html.it ho trovato questo per risolvere il problema

  6. #6
    Io ho visto che il padding (left e right) viene interpretato diversamente da ogni browser.
    Explorer e Opera considerano width come la misura complessiva del div, Mozilla considera padding+width come misura complessiva.
    Anche il corso di css. di html.it ne parla.

    Il trucco sta nell'evitare di usare padding e al suo posto usare soltanto margin, inserendo un ulteriore blocco, per dare uno spazio tra il bordo dell'elemento e il testo.
    A me funziona, perché dove avevo un elemento che, a causa del padding, si comportava diversamente dagli altri elementi contenuti nella pagina, ora ho un elemento che si comporta correttamente in tutti i browser.

    Il doctype usato è il transitional:

    <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
    "http://www.w3.org/TR/html4/loose.dtd">

  7. #7
    Utente di HTML.it L'avatar di zoom
    Registrato dal
    Dec 2001
    Messaggi
    1,737

    c'è il metodo important, c'è il metodo esposto da sko e c'è la tecnica di tantek

    non mi sembra il caso di usare due div quando se ne può tranquillamente fare a meno :master:
    Chicco Ravaglia per sempre con noi!

  8. #8
    OK, OK, c'avete ragione: non conoscevo l'applicazione di !important... in effetti sistema definitivamente questa questione del width su tutti i browser.

    Bene bene.


    Tuttavia continuo ad aver problemi con il corsivo in Explorer: anche con !important mi aggiunge due pixel in più e non posso usare il corsivo se voglio mantenere le dimensioni impostate.

  9. #9
    Utente di HTML.it L'avatar di zoom
    Registrato dal
    Dec 2001
    Messaggi
    1,737
    Originariamente inviato da ThePassenger
    Tuttavia continuo ad aver problemi con il corsivo in Explorer: anche con !important mi aggiunge due pixel in più e non posso usare il corsivo se voglio mantenere le dimensioni impostate.
    :master:
    in che senso?
    cosa ti succede?
    Chicco Ravaglia per sempre con noi!

  10. #10
    consiglio:

    usa il testo all'interno di tag p o h1, h2..
    4 pag. x il forum:l'ospite ora ha solo link sponsorizzati, valli a capire-GommaLayout! Agg. 25 agosto 2004)-Molla&Collano privati tecnici, per favore

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 © 2024 vBulletin Solutions, Inc. All rights reserved.