IE中的页面如何在Cassini和IIS7之间呈现不同的变化?

Jed*_*dja 13 iis-7 cassini internet-explorer-8

我完全糊涂了 - 我有一个网站,当通过Cassini(在Visual Studio中)运行时在IE8中呈现完美,但在部署到localhost并通过相同的浏览器(IE8)查看时有几个混乱的元素(样式/外观).

我在html和CSS文件上运行了Beyond Compare 3,它们完全相同.在任何情况下IIS7都可以以某种方式向浏览器发送额外/不同的信息吗?以前有没有人碰过这样的事情?

请注意,Chrome和Firefox都可以通过Cassini和IIS7轻松呈现相同的网页.

(更新)如果按F12,IE8开发者工具会认为您处于哪种浏览器模式和文档模式?

当从Cassini(http:// localhost:22120)运行时,IE8保持IE8模式(带有打开IE7兼容性视图的选项),一切看起来都很棒.

当从IIS7(http:// {机器名称})运行时,IE8自动进入IE8 Compat View,IE7标准和事情看起来很糟糕.

Pau*_*ond 17

我的假设(正如我之前的评论中提到的)是IE正在以不同的渲染模式工作,这取决于您使用的是IIS还是Cassini,这导致了布局的差异.根据工具|中的设置,它实际上似乎是导致此问题的IE 兼容性视图设置.有两个复选框:

在兼容性视图中显示Intranet站点 - 默认情况下会选中此站点.在兼容性视图中显示所有网站 - 事实并非如此.

无论哪种方式,您都应该使用标准元标记来强制您希望渲染的模式.

<meta http-equiv="X-UA-Compatible" content="IE=8" />
Run Code Online (Sandbox Code Playgroud)

希望这可以帮助.


小智 5

我认为我找到的最佳解决方案与Paul的不同,但是它告诉浏览器使用你的Internet Explorer版本解决了我对content ="IE = 8"的其他问题.

这里是:

<meta http-equiv="X-UA-Compatible" content="IE=Edge" />
Run Code Online (Sandbox Code Playgroud)