ASP.NET网站在部署时看起来不同

Dav*_*vid 12 asp.net debugging internet-explorer appearance

我已经搜索了这个问题的答案,但还没有提出任何问题.也许我使用的搜索词过于通用......无论如何,这里是:

我发现了网页设计和ASP.NET的乐趣,以及尝试在IE和所有其他浏览器中以相同的方式显示内容的噩梦.我在VS2010工作并使用IE8调试我的网站.我真正没有得到的是为什么我发布它的网站在IE中看起来与它在调试模式下看起来的方式不同...我的意思只是小事情,比如网格视图中的边框在发布的网站中消失,简单的html水平规则也不一样.

它也搞砸了我的列表菜单非常糟糕,但我设法用*display:inline; 黑客攻击.奇怪的是它在调试模式下不需要它,但需要它用于已发布的网站.

我在自己的机器上托管该站点,运行Win XP Pro并通过IIS使用.NET 4.0进行托管...问题可能与IIS有关吗?

任何帮助都会非常感激,因为这些差异只是荒谬而且让我感到绝望.我希望这里的每个人都能使用Chrome或Safari,但遗憾的是IE仍然在日本统治......

小智 11

这适用于我,覆盖ie中的设置

网页的HEAD元素中的META标记(或在母版页中更好)

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

链接到这里 http://blogs.msdn.com/b/askie/archive/2009/03/23/understanding-compatibility-modes-in-internet-explorer-8.aspx


小智 6

我见过与可信站点/内部网站点/互联网站点安全设置相关的类似行为.在调试模式下运行时,您使用的URL与发布时的URL不同吗?有时当我使用像http:// localhost/xxx这样的URL进行调试时,当我使用http://machinename.domain.com/xxx之类的URL直接从IIS访问同一个站点时,我会看到一个解析为受信任的URL 站点或本地Intranet和另一个到Internet,它会根据IE设置更改外观.


And*_*ers 6

我发现在IIS中的HTTP响应标头中覆盖兼容性更好,添加标头:

X-UA-Compatible: IE=Edge
Run Code Online (Sandbox Code Playgroud)

IE=Edge部分将设置兼容性以使用可用的最高模式,将适用于所有用户,并且还适用于站点中的所有页面,同时只需将标题放在一个位置.