5

Cuando renderizamos elementos dinámicos con Javascript en IE7, los estilos CSS no se aplican. Cuando usamos la barra de herramientas de Web Developer para ver la página, los elementos dinámicos no aparecen. Las páginas se procesan bien en Firefox, Chrome y Safari.Los estilos CSS no se aplican a elementos dinámicos en Internet Explorer 7

¿IE7 no puede aplicar estilos CSS a elementos creados dinámicamente? IE8 representa los elementos dinámicos correctamente.

Esta pregunta se aplica a IE8 ya que usamos la metaetiqueta para obligar a IE8 a renderizar en modo IE7.

Gracias!

+4

Por favor, muestre algunos códigos. Una razón común para esto es HTML –

+0

defectuoso. Gracias, Pekka. Claro, si visita el sitio de nuestro cliente @ http://www.tekiki.com, puede ver a qué me refiero. – Crashalot

+0

Añadimos detección de navegador/características al sitio. Haga clic aquí para acceder al sitio desde IE7 o IE8: http://www.tekiki.com/?so=1. Si no, se te redireccionará a una página explicando la falta de soporte para IE. Desde la página de inicio, ingrese dos palabras clave y haga clic en "Lluvia de ideas". Aparecerán los problemas de renderizado. Específicamente, vea los artículos en el cuadro "Traducciones" (columna de la derecha). Cada línea debe contener una etiqueta de traducción e idioma, pero IE7 mezcla los dos elementos de tramo juntos. – Crashalot

Respuesta

11

Encontramos el problema: en lugar de usar setAttribute ('clase', 'cssClass') en un nuevo elemento, necesitábamos usar setAttribute ('className', 'cssClass'), donde 'cssClass' es un usuario definido Clase CSS

Mientras FF maneja el atributo 'clase', IE ahoga porque 'clase' es una palabra clave especial en Javascript. Por lo tanto, debe usar 'className' como el nombre del atributo.

¡Gracias por las respuestas de todos!

+0

Recibo otra excepción con video.js DOMException no detectada: no se pudo ejecutar 'setAttribute' en 'Element': '-' no es un nombre de atributo válido. en http://vjs.zencdn.net/6.2.4/video.js:20271:12 en Array.forEach () en Player.createEl $$ 1 [as createEl] (http: //vjs.zencdn .net/6.2.4/video.js: 20265: 39) en new Player (http://vjs.zencdn.net/6.2.4/video.js:20103:23) en videojs (http: // vjs.zencdn.net/6.2.4/video.js:24142:16) en HTMLDocument. ( –

+0

Creo que el problema era que tenía en el elemento html de mi reproductor –

1

Supongo que IE7 (es decir, IE8 cargando como 7) está cargando los estilos CSS y solo utilizando los que se aplican a la estructura del documento y al tiempo de carga. Tal vez puedas forzar la recarga de la hoja de estilo al incluir otra etiqueta en el contenido cargado dinámicamente.

Quick Q: ¿Está utilizando el estricto DOCTYPE? Dicen algo here sobre la necesidad de utilizar el estricto DOCTYPE con IE7 específicamente. Está justo debajo de la sección Descripción general.

Cuidado: Si no uso estricto desde el principio, que va a lanzar su disposición a cabo. Pero recomendaría usar Strict de todos modos, ya que hace su vida más fácil a largo plazo. Solo arregle su diseño después de cambiar y usted es A para de distancia.

Cuestiones relacionadas