1

これは、IE ブラウザー モードに慣れている人にとっては、簡単で簡単な質問かもしれません。

開発ツールごとに「ドキュメント モード: IE7 標準」(ブラウザ モード: IE9 を使用) に切り替わるイントラネット アプリケーション ウィンドウがあります。その結果、フォーム フィールドがすべてごちゃごちゃになったり、CSS/floats がゆがんだり、スクリプトが正しく機能しないなどの事態が発生します。問題が発生した場合、それを解決する唯一の方法は、ブラウザを完全に閉じて Internet Explorer を再起動することです。

問題が発生しているユーザーを最終的に見つけ、開発ツールを開き、ドキュメント モードが IE7 に設定されていることを確認し、それを IE9 に戻すとすべてが修正されました。それでも、いったん IE7 に設定すると、デフォルトで IE9 に戻す唯一の方法は、ブラウザを閉じることです。それ以外の場合、ブラウザー全体ではなくウィンドウを閉じるだけで、ウィンドウを開くたびに IE7 に戻ります。

何がこの問題を断続的に引き起こしているのかわかりません。Doctypeと関係があるのではないかと思いましたか? 誰でもアドバイスを提供できますか?

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="AppScreen.aspx.cs" Inherits="Project.AppScreen" %>
<%@ Register Assembly="AjaxControlToolkit" Namespace="AjaxControlToolkit" TagPrefix="asp" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml">
<head runat="server">
    <link href="~/Styles/AppScreen.css" rel="Stylesheet" type="text/css" />
    <script src="Scripts/jquery-1.4.1.js" type="text/javascript"></script>
    <title>Title</title>

    <script type="text/javascript">
    //A couple other quickie scripts
    </script>
</head>
4

2 に答える 2

2

あなたは問題の根本を知りたいと言うので、次のようになります。

IE には、ローカル イントラネット上のサイトに互換モードを使用するように指定する構成設定があります。この構成設定は、デフォルトでオンになっています。

この設定は、IE のバージョンをアップグレードしているが、イントラネット ソフトウェアをアップグレードしたくない企業を支援する目的で存在します。

もちろん問題は、多くのイントラネットがこのカテゴリに分類されないことです。イントラネットでも IE のベスト モードを使用したい。しかし、この設定にはいずれかの方法でデフォルトを設定する必要があり、Microsoft はデフォルトでオンにすることを選択しました。

したがって、解決策は、イントラネット上の PC を一周して、設定をオフにすることです。(一部のユーザーは、すでに自分でオフにしているか、インストール時にそのように設定していた可能性があります。これにより、すべての人に発生しない理由が説明されます)。

または、メタ タグを配置して、IE に優先モードを強制的に使用させることもできます。

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

ここでIE=edgeは、特定の IE バージョンに固定するのではなく、利用可能な最適なモードを使用するように IE に指示します。

正直に言うと、何らかの方法で IE を間違ったモードに設定した残りのユーザーとのランダムな問題を回避するために、このメタ タグをコードに挿入することをお勧めします。

X-UA-CompatibleHTML コードを混乱させたくない場合は、フラグを http ヘッダーとして指定することもできます。

最後に、少し話が逸れますが、「ローカル イントラネット」の定義には、自分の PC で実行されているサイトも含まれることに注意してください。これは、この設定が、localhost で作業しているが設定について知らない初心者の Web 開発者をしばしば捕まえることを意味します。

于 2013-05-16T20:40:07.897 に答える
1

<head>これをタグに配置してみてください:

<meta http-equiv="X-UA-Compatible" content="IE=9"/>
于 2013-05-14T17:47:10.093 に答える