Si tengo este css

div.myContainer img.noCampaign { display:none; }

Y esta html / javascript

<div class="myContainer">
  <script>document.write('<img class="noCampaign" src="whatever.jpg" />');</script>
</div>

¿Parece que no puedo hacer que desaparezca el elemento img?

¿No hay acceso al elemento img a través de css al agregar elementos dinámicamente con javascript document.write?

/ T

2
Tommy 20 oct. 2009 a las 15:22

4 respuestas

La mejor respuesta

Los estilos CSS afectan a los elementos HTML generados por js; de hecho, su código de ejemplo funciona exactamente como se esperaba en mis pruebas. (Después de agregar el elemento <script>, de todos modos)

Sospecho que hay otro problema con su código que impide que se comporte como a usted le gusta. Si edita la pregunta con el código que realmente utilizó, podríamos ayudarlo a encontrar el problema. Probablemente solo haya una sintaxis simple o un error de precedencia en alguna parte.

3
anschauung 20 oct. 2009 a las 12:17

¿Te ayudaría una URL incrustada?

document.write('<span style="color:#FFFFFF;"> <img src="www.example.com/img.jpg" /> some text and a <a href="http://example.com/" title="example">link</a>');
-1
Fabien 11 ene. 2013 a las 21:48

Sí, todo lo que se genera (estático o dinámico) se ve afectado por cualquier CSS (externo, incrustado o en línea)

0
Ashwin 6 dic. 2011 a las 09:25

Puede agregar elementos secundarios al documento sin usar document.write. Agregue un elemento de imagen como hijo al div.

Uso

document.createElement

0
rahul 20 oct. 2009 a las 11:30