¿Puedes tener un <span> dentro de un <span>?

191

Aquí está la historia: estoy usando SWFObject para insertar un objeto Flash en mi página. La incrustación se come mi span. Entonces, pierdo todo mi CSS por ello. Estaba pensando en mover todo el CSS al padre para no perder mis estilos CSS cuando aparece el Flash.

Intenté usar a spandentro de a span, pero no creo que funcione. ¿Hay alguna razón para esto? No entiendo por qué podrías tener divdentro de a divpero no spandentro de a span.

¿Tiene que ver con spansestar en línea?

Roozbeh15
fuente
20
Puede tener un lapso dentro de un lapso
SLaks
1
¿Qué quiere decir con: "incrustar se come mi lapso". Además, proporcione un caso de prueba reducido en dabblet o Jsfiddle .
bookcasey
Un intervalo no es diferente de un div, excepto que, por defecto, las propiedades de cada uno tienden a definirse de cierta manera. Sin embargo, ambos son solo elementos. Puede ver un lapso como un elemento de nivel de bloque si elige hacerlo. Creo que estás usando el método de inserción incorrectamente. Creo que swfObject le pide que defina un elemento para que reemplace el contenido de. Su ejemplo aquí: code.google.com/p/swfobject/wiki/documentation muestra que reemplazan un objeto. Tal vez deberías hacer lo mismo.
Kai Qing
Para cualquiera que se encuentre con esta pregunta. Tenga en cuenta que es posible que deba establecer su intervalo position: blocko position: inline-blocksi necesita agregar estilo.
JGallardo
@JGallardo quieres decir display: blocko display: inline-block.
Esteban Santini

Respuestas:

291

La especificación HTML4 establece que:

Los elementos en línea pueden contener solo datos y otros elementos en línea

Span es un elemento en línea, por lo tanto, tener span dentro de span es válido. Hay una pregunta relacionada: ¿pueden las etiquetas <span> tener algún tipo de etiquetas dentro de ellas? lo que lo deja completamente claro.

La especificación HTML5 (incluido el borrador más reciente de HTML 5.3 con fecha del 16 de noviembre de 2017) cambia la terminología, pero sigue siendo perfectamente válido colocar el intervalo dentro de otro intervalo.

Paweł Bulwan
fuente
186

Si. Puedes tener un spana span. Su problema proviene de otra cosa.

bookcasey
fuente