html - predeterminar - Forzar a Internet Explorer 9 a usar el modo de documento de estándares
predeterminar emulacion internet explorer (8)
Asegúrate de tener en cuenta que al agregar esta etiqueta,
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
solo puede permitir la compatibilidad con las últimas versiones. Todo depende de tus bibliotecas
¿Cómo puedo forzar a Internet Explorer 9 a usar el modo de documento de estándares? Creé un sitio web y descubro que IE9 usa el modo peculiar para representar las páginas del sitio web. Pero quiero usar el modo estándar para renderizar.
Asegúrate de usar el tipo de documento correcto.
p.ej.
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
o solo
<!doctype html>
y también read y comprender cómo los modos de compatibilidad y la barra de herramientas del desarrollador para IE funcionan y configuran modos para IE:
Hay algo muy importante sobre este hilo que se ha tocado pero no se ha explicado completamente. El enfoque HTML (agregar una metaetiqueta en el encabezado) solo funciona de manera consistente en HTML sin procesar o en páginas de servidor muy básicas. Mi sitio es un sitio muy complejo impulsado por servidor con páginas maestras, temas y muchos controles de terceros, etc. Lo que encontré fue que algunos de estos controles agregaban programáticamente sus propias etiquetas al HTML final que se estaban enviando al sitio. navegador al comienzo de la etiqueta de la cabeza. Esto efectivamente hizo inútiles las metaetiquetas HTML.
Bueno, si no puedes vencerlos, únete a ellos. La única solución que funcionó para mí es hacer exactamente lo mismo en el evento de pre representación de mis páginas maestras como tal:
Private Sub Page_PreRender(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.PreRender
Dim MetaTag As HtmlMeta = New HtmlMeta()
MetaTag.Attributes("http-equiv") = "Content-Type"
MetaTag.Attributes("content") = "text/html; charset=utf-8;"
Page.Header.Controls.AddAt(0, MetaTag)
MetaTag = New HtmlMeta()
MetaTag.Attributes("http-equiv") = "X-UA-Compatible"
MetaTag.Attributes("content") = "IE=9,chrome=1"
Page.Header.Controls.AddAt(0, MetaTag)
End Sub
Esto es VB.NET pero el mismo enfoque funcionaría para cualquier tecnología del lado del servidor. Siempre que se asegure de que sea lo último que se haga justo antes de que se muestre la página.
Intenté con un método alternativo:
Presione la tecla F12 Luego, en el lado derecho en el menú desplegable, seleccione internet explorer versión 9.
Eso es todo y funcionó para mí.
Para evitar el modo peculiar, defina un ''doctype'' como:
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01//EN"
"http://www.w3.org/TR/html4/strict.dtd">
Para hacer que IE represente la página en modo de documento IE9:
<meta http-equiv="x-ua-compatible" content="IE=9">
Tenga en cuenta que "IE=edge"
hará que IE renderice la página con el modo de documento más reciente, en lugar del modo de documento IE9.
pon un doctype como la primera línea de tu documento html
<!DOCTYPE html>
aquí puede encontrar una explicación detallada sobre la compatibilidad de documentos de Internet Explorer: Definición de compatibilidad de documentos
<!doctype html>
<meta http-equiv="X-UA-Compatible" content="IE=Edge">
Esto hace que cada versión de IE utilice su modo estándar, por lo que IE 9 utilizará el modo de estándares IE 9. (Si, por el contrario, deseaba que las versiones más nuevas de IE también utilizaran específicamente el modo de estándares IE 9, reemplazaría a Edge
por 9
Pero es difícil ver por qué querría eso).
Para explicaciones, vea http://hsivonen.iki.fi/doctype/#ie8 (parece bastante desordenado, pero eso se debe a que el IE es desordenado en sus comportamientos).
<!DOCTYPE html>
<html lang="en">
<head>
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
La metaetiqueta debe ser la primera etiqueta después de la etiqueta de encabezado o no funcionará.