Visualizzazione dei risultati da 1 a 10 su 10
  1. #1
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,747

    div contenitore che non si espande verticalmente in FF

    vorrei racchiudere tutti i div in uno unico, il classico 'contenitore', oltre che per centrarlo (già fatto) per avere un contorno di 1px che racchiude il tutto.

    codice:
    body {
    text-align: center ;
    margin: 5px 0px 0px 0px ;
    font-family: arial,Verdana,Helvetica,courier,sans-serif ;
    }
    
    div#contenitore{
    border: 1px solid #808080 ;
    width: 770px ;
    background: #ffffff ;
    margin: 0 auto ;
    }
    in IE il contorno racchiude tutto mentre in FF no.

    come mai?
    Errare humanum est, perseverare ovest

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Non ha molto senso dare dei margini al body: il body occupa per definizione tutta la finestra.
    Invece va bene inserire il text-align, per centrare in IE quanto contiene.

    Pero` se vuoi far riferimento alle dimensioni del body, devi definrne le dimensioni: in pratica devi inserire nel body:
    width: 100%;
    height: 100%;
    Tali dimensioni vanno assegnate anceh all'html (sempre per evitrare che qualche browser interpreti in modo diverso da quanto vorresti).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Originariamente inviato da Mich_
    Non ha molto senso dare dei margini al body: il body occupa per definizione tutta la finestra.
    Mich_ , non sono molto d'accordo.

    Firefox e Safari ad esempio gli assegnano di default uno spazio di qualche pixel di margine. Dovrai settare margin:0 per eliminarlo, sopratutto se vuoi una width:100% o ti apparirà la scrollbar. Non ricordo con sicurezza per Explorer, ma mi pare di no.
    Qualunque imbecille può inventare e imporre tasse. (Maffeo Pantaleoni)

  4. #4
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,747
    ok, ho risolto così, però gradivo avere un po' spazio in fondo alla pagina e ho messo il padding: 5px nel body, ma su FF non me li dà:master:

    codice:
    html {
    height: 100% ;
    }
    
    body {
    text-align: center ;
    height: 100% ;
    padding: 5px 0px 5px 0px ;
    }
    
    div#contenitore{
    border: 1px solid #808080 ;
    width: 770px ;
    height: 100% ;
    margin: 0 auto ;
    padding: 0px ;
    }
    Errare humanum est, perseverare ovest

  5. #5
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,747
    riguardo alla scrollbar verticale ho impostato margin: 0 sia in html sia in body, purtroppo rimane sia in FF sia in IE nche azzerando tutti i padding.
    Errare humanum est, perseverare ovest

  6. #6
    al div contenitore, metti height: 99%; e risolvi

  7. #7
    Originariamente inviato da carlo2002
    riguardo alla scrollbar verticale ho impostato margin: 0 sia in html sia in body, purtroppo rimane sia in FF sia in IE nche azzerando tutti i padding.
    hai meso un qualche border?

    facendo la somma:
    margin:0 (assegnato) +
    border: 0 (default) +
    height:100% (assegnato) +
    padding: 0 (assegnato) =

    totale altezza 100% (NON dovresti avere alcuna scrollbar).
    Qualunque imbecille può inventare e imporre tasse. (Maffeo Pantaleoni)

  8. #8
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,747
    Originariamente inviato da webus
    hai meso un qualche border?

    facendo la somma:
    margin:0 (assegnato) +
    border: 0 (default) +
    height:100% (assegnato) +
    padding: 0 (assegnato) =

    totale altezza 100% (NON dovresti avere alcuna scrollbar).
    si, il div 'contenitore' ha border: 1 ed in pratica la scrollbar compariva pe quei due pixel,
    mettendolo a zero la situazione peggiorava, allora ho provato ad azzerare tutti i border margin padding dei div 'contenitore','body' e 'html' e la situazione è sempre negativa.
    Allora ho tolto height:100% ai div 'html' e 'body' e finalmente la scrollbar scompare ma quelli mi
    servivano affinchè il div 'contenitore' potesse avere un contorno che mi incorniciava tutti i suoi contenuti, quindi sono punto e a capo.

    Però anche tralasciando la scrollbar (a questo punto pazienza) se imposto il div 'contenitore' al 100% questo mi assume l'altezza del body e li si ferma, se al suo interno ci sono dei contenuti che superano quell'altezza non si espande in altezza contenendoli ma viene tranciato.

    alla fine:

    si riesce o no con questi benedetti CSS a fare un semplice contorno di un pixel a dei contenuti?

    (naturalmente il discorso vale per FF, in questo caso quella baracca di IE non sembra dare problemi)
    Errare humanum est, perseverare ovest

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Prova ad abbandonare la definizione dell'altezza, e mettici invece top e bottom (ambedue).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  10. #10
    Utente di HTML.it L'avatar di carlo2002
    Registrato dal
    Jun 2002
    Messaggi
    2,747
    La discussione ha preso una piega non voluta ossia espandere un div al 100% dell'altezza della pagina, invece mi serviva sapere come espandere un div in altezza affinchè contenga tutto ciò che ha all'interno.

    L'errore è stato causato da me in quanto non ho specificato che all'interno del div 'contenitore' ci sono dei div flottanti e mentre IE si espande (neanche tanto bene), FF non lo fa (a quanto sembra questo è un comportamento corretto).

    La soluzione, a discapito di una struttura xhtml perfetta (l'esigenza lo giustifica), è l'inserimento di un div vuoto da inserire in fondo al div che si deve espandere.

    ecco come ho risolto,
    codice:
    div.clear {
    clear: both ;
    height: 0 ;
    overflow: hidden ;
    }
    
    <div class="clear"></div>
    Errare humanum est, perseverare ovest

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