• User Attivo

    regola su ul li annidati (menù)

    Salve a tutti qualcuno saprerbbe dirmi come definire una regola e non farla ereditare a tutti i figli dell'elemento ? Mi spiego meglio, ho un menù dove solo la voce selezionata deve restare colorata (ha un class="current") ma non sò perchè vengon colorate tutti sullo stesso livello :mmm:

    tnx


  • User Attivo

    Ciao, che io sappia, i CSS sono stati ideati appositamente per essere ereditati. Per sovrascrivere una regola devi necessariamente inserirne un'altra subito dopo che "disabilita" quella precedente. Ecco un esempio (comunque, se incolli nel forum un codice di esempio con la parte che non ti funziona, ti posso dire cosa c'è che non va con il tuo codice):

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
        <title>Test blocco dell'inheritance CSS</title>    
        <style type="text/css">
        ul li.current {
            color: red;
        }
        ul li.current ul li {
            color: black;
        }
        </style>
    </head>
    <body>
    
    <ul>
        <li>item 1</li>
        <li class="current">item 2
            <ul>
                <li>item 1</li>
                <li>item 2</li>
                <li>item 4</li>
                <li>item 5</li>
                <li>item 6</li>
                <li>item 7</li>
                <li>item 8</li>
                <li>item 9</li>
                <li>item 10</li>    
            </ul>    
        </li>
        <li>item 4</li>
        <li>item 5</li>
        <li>item 6</li>
        <li>item 7</li>
        <li>item 8</li>
        <li>item 9</li>
        <li>item 10</li>    
    </ul>
    
    </body>
    </html>