Pregunta

Tengo un script SIFR que cubre los elementos de navegación primarios de esta manera:

[code]
/*********************
* sIFR configuration
**********************/

var itc = {
    src: '/assets/js/sifr3/demo/font2.swf'
    ,ratios: [7, 1.32, 11, 1.31, 13, 1.24, 14, 1.25, 19, 1.23, 27, 1.2, 34, 1.19, 42, 1.18, 47, 1.17, 48, 1.18, 69, 1.17, 74, 1.16, 75, 1.17, 1.16]
}

sIFR.activate(itc);
sIFR.useStyleCheck = false;
sIFR.replace(itc, {
    selector: 'h2, #primary_nav ul li'
    ,css:[
        '.sIFR-root { font-size:14px;font-weight:normal; }',
        ,'#primary_nav ul li a { color:#000000; text-decoration: none; }'
        ,'#primary_nav ul li a:hover { color: #000000;  text-decoration:underline; background-color:#000000; }'
        ,'#primary_nav ul li.active a { color:#000000;  text-decoration:underline;}'
    ]
    ,wmode: 'transparent'
    ,fitExactly:true
    ,forceClear:true
    ,forceSingleLine:true
}); 
[/code]

Sin embargo, el " li.active a " se aplica a cada elemento de menú . Esto no es lo que quiero.

Quiero que solo aplique la clase .active a aquellos que tienen esa clase.

El " #primary_nav ul li.active a " se utiliza en el elemento de la lista del menú en el que se encuentra.

es decir:

[code]
<li class="active"><a href="#">Home</a></li>
<li><a href="#">News</a></li>
<li><a href="#">Some other menu item</a></li>
[/code]

¿Cómo puedo hacer que SIFR solo aplique .active a la lista de elementos activos?

Gracias.

¿Fue útil?

Solución

Primero ejecute un reemplazo para #primary_nav ul li.active que tiene un estilo especial, y luego reemplaza todos los demás elementos de la lista.

Además, en las reglas de CSS para el reemplazo no puede repetir #primary_nav ul li , simplemente use a .

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top