Pergunta

Quando imprimo meu Env {'http_user_agent'} no início de cada uma das minhas páginas Perl, às vezes diz que estou usando o IE7 e outras vezes diz que estou usando o IE8. Alguma ideia do porquê?

Mozilla/4.0 (compatible; MSIE 7.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322; 
InfoPath.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648; 
.NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)

Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 5.1; Trident/4.0; .NET CLR 1.1.4322;
InfoPath.1; .NET CLR 2.0.50727; .NET CLR 3.0.04506.30; .NET CLR 3.0.04506.648;
.NET CLR 3.0.4506.2152; .NET CLR 3.5.30729)

Minha versão do IE é na verdade 8.

Foi útil?

Solução

O IE 8 fingirá ser o IE 7 por razões de compatibilidade com versões anteriores - isso é chamado de visualização de compatibilidade.

Mais Informações: http://msdn.microsoft.com/en-us/library/dd567845%28vs.85%29.aspx

A visualização de compatibilidade (e, portanto, uma string de agente de usuário do IE 7) está ativada apenas para sites específicos. Para visualizar a lista, visite

res: //iecompat.dll/iecompatdata.xml

Usando seu navegador do IE.

Outras dicas

O IE8 possui um modo de compatibilidade do IE7 que permite que ele funcione exatamente como e se identifique como IE7. É assim que o IE8 mantém a compatibilidade com versões anteriores com sites projetados para usar as peculiaridades do IE7 e versões anteriores do Internet Explorer.

Como fazer o IE8 imitar o IE7

Você está usando o modo de compatibilidade do IE8, que faz seu navegador se comportar como o IE7 e se apresentar como tal?

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top