[abajo mi respuesta]
Abel Sutilo escribió:
> Jorge Rumoroso escribió:
>
>> Pues si que debería poder ser revisardo, pues el hijo del elemento "ul" sólo
>> puede ser el elemento "li".
>>
>> www.niquelao.net
>>
>>
>
> Hola,
>
> Por tu respuesta creo que ó no me has entendido ó no me expresado con
> claridad. Si revisas mi post original (no al segundo que he escrito como
> aclaración) quizás comprendas a lo que me refiero. De todas formas
> vuelvo a insistir por si alguien tiene una idea.
>
> Premisas:
> Se trata de pintar con CSS una lista para un menú sin usar id o class
> (sólo por herencias).
>
> XHTML:
> <ul>
> <li><a href="#">Item 1</a></li>
> <li><a href="#">Item 2</li>
> <ul>
> <li><a href="#">Item 2.1</a></li>
> <li><a href="#">Item 2.2</a></li>
> </ul>
> <li><a href="#">Item 3</a></li>
> etc...
> </ul>
>
Lo que te dice Jorge es que tu código debería tener un <li> alrededor de
cada <ul>
<ul>
<li><a href="#">Item 1</a></li>
<li><a href="#">Item 2</li>
<li>
<ul>
<li><a href="#">Item 2.1</a></li>
<li><a href="#">Item 2.2</a></li>
</ul>
</li>
<li><a href="#">Item 3</a></li>
etc...
</ul>
> CSS:
> ul{}
> ul li{}
> ul li a{}
> ul li ul{}
> ul li ul li {}
> ul li ul li a {}
>
> Hasta ahi sin problemas.
>
> Problema:
> El prolema es que aquellos Items que preceden a la lista anidada llevan
> un diseño diferente a aquellos que no preceden a una lista anidada [1]
> (luego los valores de "ul li a{}" no nos valen para el Item 2 en este
> ejemplo.
>
> La pregunta:
> <strong>Sin usar id o class, ¿cómo "recorcholis" puedo pintar dicho Item
> que precede a la sublista de manera diferente?</strong>
> ¿Alguna pseudoclase tipo :first-child pero a la inversa? No encontré
> nada en la especificación CSS2.
>
Yo opto por algo que tal vez sea poco ortodoxo, pero siempre me ha
funcionado de maravillas: contradecirme.
Por ejemplo:
li { color: black }
li li { color: red }
Entonces el li padre queda en negro y el li hijo queja en rojo. Podés
definir cualquier propiedad para el padre siempre y cuando la
contradigas para el hijo.
li { display: inline; }
li li { display: block; }
Creo que es una solución a tu problema. Si a alguien le parece una
aberración, me encantaría conocer otras ideas.
> [1] Ejemplo gráfico para entenderlo mejor:
> http://www.abelsutilo.com/documentos/ovillo/sublista/sublista.gif
>
> Gracias,
>
> --
> Abel
>
--
Martin Szyszlican
http://www.ylisto.info
"Si este mensaje fué muy largo, fué poco profundo"
_______________________________________________
Lista de distribución Ovillo
Para escribir a la lista, envia un correo a [email protected]
Puedes modificar tus datos o desuscribirte en la siguiente dirección:
http://ovillo.org/mailman/listinfo/ovillo