Visualizzazione dei risultati da 1 a 6 su 6

Discussione: Centratura menù

  1. #1
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    263

    Centratura menù

    Ciao a tutti.
    Ho un problemino. Vorrei centrare verticalmente nella pagina un menu (che contiene un sottomenu), ma non ci riesco.
    La pagina html è:
    <table width="100%" height="100%" border="0">
    <tr>
    <td colspan="3" align="center"></td>
    </tr>
    <tr>
    <td colspan="3" align="center">
    [img]images/Logo.jpg[/img]</td>
    </tr>
    <tr>
    <td colspan="3" height="5%" ></td>
    </tr>
    <tr>
    <td width="25%"></td>
    <td valign="middle" >
    <div>
    <ul class="menu1" >
    [*]prima voce
    [*]seconda voce
    <ul>[*]Prima Sotto Voce[*]Seconda Sotto Voce[*]Terza Sotto Voce[/list]

    [*]terza voce
    [*]quarta voce
    [/list]
    </div>
    </td>
    <td width="25%"></td>
    </tr>
    </table>


    Il file css è:
    /* MENU PRINCIPALE */
    .menu1{
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 10px;
    color: #CCCCCC;
    height: 25px;

    vertical-align: center;
    margin:0;
    padding:0;
    list-style:none;
    height:2em;
    }
    .menu1 li{
    float:left;
    position:relative;
    }
    .menu1 a{

    float:left;
    height:2em;
    line-height:2em;
    padding:0 10px;
    text-decoration:none;
    }

    /* SOTTO MENU */
    .menu1 ul{
    margin:0;
    padding:0;
    list-style:none;
    width:17em;
    background-color:#FFFFFF
    }
    .menu1 ul li{
    float:none;
    }
    .menu1 ul a{
    float:none;
    display:block;
    height:1.8em;
    line-height:1.8em;
    border-right:1px solid #000;
    border-left:1px solid #000;
    border-bottom:1px solid #000;
    }
    /* MENU ON OFF */
    .menu1 ul,
    .menu1 ul.subMenu-off{
    position:absolute;
    visibility:hidden;
    }
    .menu1 ul.subMenu-on{
    visibility:visible;
    }
    /* POSIZIONAMENTO DEL SOTTO MENU */
    .menu1 ul.subMenu-on{
    top:2em;
    left:-1px;
    visibility:visible;
    border-top:1px solid #000;
    }

    /* COLORI */
    .menu1{
    color:#000;
    }
    .menu1 a{
    color:#000;
    }
    /* EFFETTO ROLLOVER */
    .menu1 a:hover,
    .menu1 a:focus,
    .menu1 a:active{
    text-decoration:underline;
    }

    Qualcuno può darmi una mano ?

    Grazie.
    Marco

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Premetto che la tabella ha tutta l'aria di essere di formattazione (e questo complica la sistemazione dei CSS) e premetto che usi formattazione HTML assieme ai CSS (e questo puo` generare conflitti fra le due formattazioni).

    Ma cosa vuoi centrare?
    I vari[*] all'interno del menu? Ma non avrebbe senso visto che sono flottati a sinistra
    Tutto il menu all'interno della cella? Devi usare il text-align: center; nella tabella (per IE) e margin: 0 auto; nel .menu1 (per i browser conformi).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  3. #3
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    263
    Mich, ti ringrazio per la risposta (mi spiace non esser riuscito a risponderti prima, ma ho dei problemi al pc).
    Si, in effetti devo centrare tutto il menu all'interno della cella.
    Ho provato ad inserire, seguendo anche il tuo consiglio, il seguente codice:
    .menu1{
    font-family: Verdana, Arial, Helvetica, sans-serif;
    font-size: 10px;
    color: #CCCCCC;
    height: 25px;
    list-style:none;
    /*
    position: relative;
    margin-left: 32%;*/
    text-align: center;
    margin: 0 auto;
    }
    ma non funziona.
    Le due righe commentate fanno qualcosa, ma nel momento in cui ridimensione la pagina del browser, mentre tutto il resto si centra automaticamente, il menu comincia a dare problemi.
    Capisco che hyml+css può non essere il massimo, ma è il massimo che conosco...

    Se riesci a darmi una mano te ne sarei grato (anche se probailmente non riuscirò a risponderti immediatamente).

    Grazie
    Marco

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Le righe commentate devi toglierle, oppure cambiare completamente modo di lavorare (ci sono due modi di usare i CSS: se usi il position, tutto diventa piu` complicato).

    Comunque io ti avevo scritto:
    Devi inserire nel CSS del <td>:
    text-align:center; /* per dare il contentino ad IE */
    e inserire nel CSS dell'<ul>:
    margin: 0 auto; /* per sistemare per i browser conformi */
    text-align: left; /* per controbilanciare il text-align del td */

    Dato che usi il list-style: none, probabilmente devi anche definire margin:0; e padding:0; nei vari[*].
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  5. #5
    Utente di HTML.it
    Registrato dal
    Feb 2004
    Messaggi
    263
    Mich, grazie per l'aiuto, ma penso di rifare tutto solo con i css.
    Mi rendo conto che mescolare html (la tabella) e i css non è proprio il massimo.

    Grazie
    Marco

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Mi sa che hai un po' di confusione: stai mescolando due cose che sono distinte.

    1. Formattare tramite <table> e` un errore semantico: usi uno strumento sbagliato, perche` da` un significato ai tuoi dati che non vuoi che abbia. Per cui non si deve usare una tabella per formattare.

    2. Se si usano i CSS, e` opportuno non usare la formattzione HTML (alcuni tag presentazionali ed alcuni attributi), che potrebbe interferire con la formattazione CSS. In pratica devi evitare tutti i tag e attributi non presenti nella DTD Strict (ad esempio vedi: http://www.w3schools.com/tags/default.asp ).
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

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.