Foros del Web » Creando para Internet » CSS »

Párrafos dentro entre <li>s

Estas en el tema de Párrafos dentro entre <li>s en el foro de CSS en Foros del Web. Hola, Estoy haciendo unos listados y los quiero todos en CSS y bien validados. El problema es que entre algunas <li> hay párrafos (<p> ), ...
  #1 (permalink)  
Antiguo 25/08/2008, 06:52
 
Fecha de Ingreso: noviembre-2005
Mensajes: 825
Antigüedad: 12 años, 1 mes
Puntos: 8
Párrafos dentro entre <li>s

Hola,

Estoy haciendo unos listados y los quiero todos en CSS y bien validados.

El problema es que entre algunas <li> hay párrafos (<p> ), que no puden ser luego validados porque dentro de un <ul> no puede haber párrafos:

document type does not allow element "p" here; assuming missing "li" start-tag

Así que he sustituido el párrafo por otra li, pero para quitarle el estilo, lo hago así:

<li style="list-style-type: none;">

Para contraponerlo con el li con círculo en mi caso.

Con ello se consigue el mismo resultado, y validándolo.

El problema ahora es que hay demasiados <li style="list-style-type: none;">, lo cual no es muy estricto con respecto a una separación purista entre contenido y forma.

Es decir, que me gustaría eliminarlos indicando un class o algo así para las li que no quiero que tengan estilo.

¿Se puede hacer?


Si no, ¿se os ocurre algo mejor o con el mismo efecto?

Un saludo y gracias.
  #2 (permalink)  
Antiguo 25/08/2008, 10:10
Avatar de Raulmmmm  
Fecha de Ingreso: marzo-2007
Ubicación: En otro lugar que tú
Mensajes: 1.549
Antigüedad: 10 años, 8 meses
Puntos: 36
Respuesta: Párrafos dentro entre <li>s

Puedes poner una clase así, pon esto entre <head> y </head>:
Código HTML:
<style type="text/css">
.parrafo { list-style-type: none; }
</style> 
Y luego:
Código HTML:
<li class="parrafo"> 
Otra solución no se me ocurre, aparte de que si tienes más listas con párrafo que listas sin párrafo puedes hacerlo al revés:
Código HTML:
<style type="text/css">
li { list-style-type: none; }
.sinparrafo { list-style-type: circle; }
</style> 
Y luego:
Código HTML:
<li class="sinparrafo"> 
  #3 (permalink)  
Antiguo 25/08/2008, 11:12
 
Fecha de Ingreso: noviembre-2005
Mensajes: 825
Antigüedad: 12 años, 1 mes
Puntos: 8
Respuesta: Párrafos dentro entre <li>s

gracias majo.
  #4 (permalink)  
Antiguo 25/08/2008, 20:50
Avatar de webosiris
Moderador egiptólogo
 
Fecha de Ingreso: febrero-2002
Ubicación: Luxor, Egipto
Mensajes: 10.727
Antigüedad: 15 años, 9 meses
Puntos: 997
Respuesta: Párrafos dentro entre <li>s

una acotación: dentro de un UL si puede haber párrafos, pero deben de estar dentro de los li.

Ejemplo NO válido
Código HTML:
<ul>
<li>blabla</li>
<p>párrafo</p>
<li>blabla2</l>
</ul> 
Ejemplo válido
Código HTML:
<ul>
<li>
<p>Párrafo1</p>
<p>Párrafo1</p>
</li>
</ul> 
__________________
Pasamos tus PSD a HTML

Pobre del que lo sabe todo, porque no tiene nada más que aprender ni razón para vivir. -
  #5 (permalink)  
Antiguo 26/08/2008, 06:18
 
Fecha de Ingreso: noviembre-2005
Mensajes: 825
Antigüedad: 12 años, 1 mes
Puntos: 8
Respuesta: Párrafos dentro entre <li>s

Lo siento Webosiris, pero tengo que disentir.

Lo he hecho como tú dices y da un fallo que dice:

document type does not allow element "p" here; assuming missing "li" start-tag.

Además, si intercambias lis y p, llega un momento en que las propias lis también dan fallo. Así:

document type does not allow element "li" here; missing one of "ul", "ol", "menu", "dir" start-tag.

Hay que meter un class.
  #6 (permalink)  
Antiguo 26/08/2008, 07:16
Avatar de webosiris
Moderador egiptólogo
 
Fecha de Ingreso: febrero-2002
Ubicación: Luxor, Egipto
Mensajes: 10.727
Antigüedad: 15 años, 9 meses
Puntos: 997
Respuesta: Párrafos dentro entre <li>s

Cita:
Iniciado por JUMASOL Ver Mensaje
Lo siento Webosiris, pero tengo que disentir.
Lo he hecho como tú dices y da un fallo que dice:
document type does not allow element "p" here; assuming missing "li" start-tag.
lo que puse es perfectamente válido... seguro que lo que hicistes fue copiar el segundo ejemplo, y no el primero, que justamente dice
Cita:
Ejemplo NO válido
??

Cita:
Iniciado por JUMASOL
Además, si intercambias lis y p,
justamente, eso NO se puede hacer....
copia en un archivo html nuevo mi segundo ejemplo, y vas a ver que es válido
__________________
Pasamos tus PSD a HTML

Pobre del que lo sabe todo, porque no tiene nada más que aprender ni razón para vivir. -
  #7 (permalink)  
Antiguo 26/08/2008, 19:08
 
Fecha de Ingreso: noviembre-2005
Mensajes: 825
Antigüedad: 12 años, 1 mes
Puntos: 8
Respuesta: Párrafos dentro entre <li>s

Yo te entiendo Webosiris, y tienes razón.

El que no me he debido de explicar bien soy yo: se trata de muchos párrafos insertos entre lis a lo largo de un listado muy amplio.

No puedo includir sólo un par de elementos. Se trata de más de veinte lis con muchos más párrafos entre ellas.

Ya lo he solucionado con un class así: <li class="no-parr">

Es valido y funciona.

Gracias de todos modos.
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 20:46.