2012-05-19 12 views
5

Estoy intentando escribir un plugin de Eclipse que muestre cierta información como página HTML. Para esto quiero usar el widget SWT Browser. El problema es que cuando configuro el contenido del navegador a través de setText, nth-child los selectores no funcionan, pero cuando configuro exactamente el mismo contenido a través del setUrl("file://..., funcionan correctamente. ¿Por qué la representación es diferente y cómo puedo lograr la misma representación con setText que con setUrl?Renderización diferente en el navegador SWT con setText y setUrl

Estoy creando Browser con SWT.NONE, ya que no quiero obligar a los usuarios a instalar Safari o Firefox.

Este es el código HTML donde el problema es reproducible:

<!doctype html><html><head> 
<style type="text/css"> 
    div:nth-child(2n) { background-color: #f00; } 
</style> 
</head><body> 
    <div>1</div> 
    <div>2</div> 
    <div>3</div> 
</body></html> 
+0

¿Cuál es el código HTML que ingresas a través de setText? ¿Lo escapó correctamente? ¿Funcionan las referencias de imagen? –

+0

Agregó el HTML. No contiene referencias de imagen. – Fixpoint

+0

No tengo InternetExplorer aquí, ¿funciona este fragmento en el IE que ha instalado? Es ese el HTML que pasas a setText, o es la fuente que obtienes, cuando haces clic derecho en el navegador y seleccionas "mostrar fuente". –

Respuesta

7

Después de haber utilizado el método setText() del navegador ampliamente, no he visto ningún comportamiento parecido a lo que usted está describiendo.

¿Es posible que se trate de un problema de modo peculiar/modo de incompatibilidad de la intranet local? IE predetermina su motor de renderizado en función del origen del contenido y, de forma predeterminada, se comporta de forma diferente cuando representa contenido de intranet que de contenido de Internet (y el contenido de su sistema de archivos local se trata como contenido de intranet). recuerde que es cierto que hay una buena cantidad de vudú a menos que establezca explícitamente el encabezado de compatibilidad.

¿Agregar la siguiente metaetiqueta cambia el comportamiento?

<meta http-equiv="X-UA-Compatible" content="IE=9" /> 

Además, ¿tiene una adecuada DOCTYPE se define en el código HTML que está añadiendo con setText()?

+0

No sabía eso sobre IE. El encabezado resolvió el problema; ¡gracias! – Fixpoint

Cuestiones relacionadas