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

Discussione: menu

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    226

    menu

    ciao
    ho creato il menu con la seguente variabile:
    codice:
    $pagina_visualizzata = basename($_SERVER['PHP_SELF']);
    echo "<ul id=\"navlist\">"; 
    while(list($url, $label) = each($array_menu)) {
    if ($url == $pagina_visualizzata){
         $stile = "attivo";
    } else  {
         $stile = "part";
    }
    echo "
         <li id=\"$stile\">
            <a href=\"$url\">$label</a>
         
    ";
    }
    echo "[/list]";
    ?>
    al menu è associato questo foglio di stile:


    codice:
    ul#navlist
    {
    margin-left: 0;
    padding-left: 0;
    white-space: nowrap;
    font-weight: bold;
    }
    
    #navlist li
    {
    display: inline;
    list-style-type: none;
    }
    
    #navlist a { padding: 3px 10px; }
    
    #navlist a:link, #navlist a:visited
    {
    color: #730400;
    background-color: #E7C35A;
    text-decoration: none;
    }
    
    #navlist a:hover
    {
    color: #E7C35A;
    background-color: #FF0000;
    text-decoration: none;
    }

    Devo fare in modo che il contenitore resti sempre ul#navlist (che determina i bordi)

    poi se ci sono delle condizioni li=id attivo allora vorrei che prendesse questo codice:
    codice:
    #navlist a:link, #navlist a:visited
    {
    color: #730400;
    background-color: #E7C35A;
    text-decoration: none;
    }
    
    #navlist a:hover
    {
    color: #E7C35A;
    background-color: #FF0000;
    text-decoration: none;
    }

    se li=id part allora vorrei prendesse quest'altro codice:
    codice:
    #navlist  a:link, #navlist  a:visited {
    color: #E7C35A;
    background-color: #FF0000;
    text-decoration: none;
    }
    
    #navlist a:hover {
    color: #E7C35A;
    background-color: #FF0000;
    text-decoration: none;
    }

    qualcuno potrebbe indirizzarmi su come impostare corettamente il foglio di stile.....ho fatto alcuni tentativi ma senza riuscita.

  2. #2
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Non riesco a seguire bene il tuo codice PHP (almeno suppongo sia PHP).
    E c'e` un = che potrebbe essere errato (forse ci vuole un == al suo posto).
    Comunque se vuoi una risposta ragionevole devi postare il codice lato client che arriva al brwoser (click destro > visualizza sorgente).

    Mi par di capire che il tuo codice lato server genera elementi con class="..." diverse. Se usi id al posto delle classi e` un erorre, dato che gli id non si possono usare piu` di una volta.
    In tal caso ti basta usare le classi nel codice CSS, ad esempio:
    codice:
    #navlist a.part { ... }
    #navlist a.part:link, #navlist a.part:visited { ... }
    
    #navlist a.active { ... }
    #navlist a.active:link, #navlist a.active:visited { ... }
    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
    Sep 2007
    Messaggi
    226
    il codice lato client:
    codice:
    <td align="center" valign="middle" >
    		
    <ul id="navlist">
         <li id="part">
            CHI SIAMO
         
    
         <li id="part">
            GALLERIA
         
    
         <li id="part">
            NOVITA'
         
    
         <li id="part">
            TRENDY
         
    
         <li id="part">
            ORDINA
         
    
         <li id="part">
            BLOG
         
    
         <li id="part">
            F.A.Q.
         
    
         <li id="part">
            SU E
         [/list]</div></td>

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Come dicevo quel codice non e` corretto. Potresti avere strane sorprese in qualche browser (non in tutti).
    Prima di tutto quindi cambia quell'id in class.

    In quel codice non vedo un elemento con classe diversa, quindi saranno tutti uguali.

    Quando hai corretto queste cose, con la modifica ai selettori che ti ho indicato dovrebbe funzionare in tutti i browser.


    PS: non usare formattazioni realizzate con codice HTML: in qualche browser il CSS non funzionerebbe correttamente. Soposta tutte le foramattazioni nel CSS.
    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
    Sep 2007
    Messaggi
    226
    ho sistemato il codice php in modo che adesso risulti corretto:

    a video mi stampa questo codice:
    codice:
    <ul id="navlist">
         <li class="part">
            CHI SIAMO
         
    
         <li class="attivo">
            GALLERIA
         
    
         <li class="attivo">
            NOVITA'
         
    
         <li class="attivo">
            TRENDY
         
    
         <li class="attivo">
            ORDINA
         
    
         <li class="attivo">
            BLOG
         
    
         <li class="attivo">
    
            F.A.Q.
         
    [/list]
    il css l'ho impostato così:
    codice:
    	
    #navlist ul {
    margin-left: 0;
    padding-left: 0;
    white-space: nowrap;
    font-weight: bold;
    }
    
    #navlist li{
    display: inline;
    list-style-type: none;
    }
    
    #navlist a.active { padding: 3px 10px; }
    
    #navlist a.active:link, #navlist a.active:visited {
    color: #730400;
    background-color: #E7C35A;
    text-decoration: none;
    }
    
    #navlist a.active:hover {
    color: #E7C35A;
    background-color: #FF0000;
    text-decoration: none;
    }
    
    #navlist  a.part { padding: 3px 10px; }
    
    #navlist a.part :link, #navlist a.part :visited {
    color: #FF0000;
    background-color: #FF0000;
    text-decoration: none;
    }
    
    #navlist a.part :hover {
    color: #FF0000;
    background-color: #FF0000;
    text-decoration: none;
    }

    comunque non vedo gli stili sulla pagina html.......quando visualizzo vedo semplici link colorati di blu.....come se la pagina non avesse foglio di stile....

    come posso risolvere.......ho fatto varie prove ma senza risultato

  6. #6
    Come colleghi il foglio di stile alla pagina?

  7. #7
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    226
    il foglio di stile lo collego così:
    codice:
    <link rel="stylesheet" href="artistic.css" type="text/css">
    mentre il menu lo importo così:
    codice:
    <?php include("head.php");?>

    non funziona solo il menù perchè per il resto della pagina il foglio di stile funziona corretamente

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ci sono gravi errori di sintassi:
    1. nel HTML la classe si chiama "attivo", mentre nel CSS si chiama "active" (che tra l'altro e` un nome riservato del DOM).
    2. #navlist a.part :hover
    lo spazio prima dei duepunti e` sbagliato: non ci deve essere
    Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
    No domande tecniche in messaggi privati

  9. #9
    Utente di HTML.it
    Registrato dal
    Sep 2007
    Messaggi
    226
    Per gli errori di sintassi hai ragione........ho fatto talmente tante prove che non me ne ero accorta



    Allora ho corretto cosi..........ma non va ancora :
    codice:
    #navlist ul {
    margin-left: 0;
    padding-left: 0;
    white-space: nowrap;
    font-weight: bold;
    }
    
    #navlist li {
    display:inline;
    list-style-type:none;
    }
    
    #navlist a.attivo { padding: 3px 10px; }
    
    #navlist a.attivo:link, #navlist a.attivo:visited {
    color:#730400;
    background-color:#E7C35A;
    text-decoration:none;
    }
    
    #navlist a.attivo:hover {
    color:#E7C35A;
    background-color:#FF0000;
    text-decoration:none;
    }
    
    #navlist  a.part { padding: 3px 10px; }
    
    #navlist a.part:link, #navlist a.part:visited {
    color:#730400;
    background-color:#FF0000;
    text-decoration:none;
    }
    
    #navlist a.part:hover {
    color:#730400;
    background-color:#FF0000;
    text-decoration:none;
    }

    vi posto anche l'idirizzo web cosi potete vedere come si vede il menu:

    Sito web

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2001
    Messaggi
    21,188
    Ci sono errori nei selettori.
    Con il codice HTML postato, i selettori CSS devono essere:
    codice:
    #navlist li.attivo a:link, #navlist li.attivo a:visited { ... }
    #navlist li.attivo a:hover { ... }
    #navlist li.part a:link, #navlist li.part a:visited { ... }
    #navlist li.part a:hover { ... }
    Il codice che ti avevo dato era riferito ad una interpretazione diversa che avevo fatto del codice PHP.
    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.