我遇到这样的问题:我在开发环境中创建的 Web 应用程序在上传到 Web 服务器后显示有所不同。
我使用相同的浏览器和同一台机器来查看页面。唯一不同的是“服务器”。我使用的是 .net 3.5,在我的开发环境中,页面是使用 ASP.net 开发服务器提供的。在 Web 服务器上,使用 IIS 6.0 提供页面。
我只有一个 CSS 文件,包含在“App_Themes/Default”文件夹中,用于控制应用程序中的所有 CSS。
以下是一些显示不一样的内容:
1)我有一个可折叠面板控件,展开时应该显示在所有其他页面元素之上。在开发环境中,它的行为正确。在 Web 服务器上,面板滑到其他元素下方。
2)我用背景和一定的字体大小定义了我的元素。当在我的开发环境中显示时,文本显示在一行上。但是,在 Web 服务器上,即使文本大小相同,文本也会换行。就好像包含的 div 以某种方式呈现为“更小”。
3) 没有固定宽度的按钮的宽度(因此宽度由按钮文本决定)在开发环境和Web服务器之间是不同的。服务器上的按钮总是更宽。
我进行了检查,确保服务器和开发环境中的 machine.config 和全局 web.config 中没有对其他 CSS 元素的引用。
我知道服务器正在读取 CSS,因为一般来说,它看起来很相似(相同的颜色、背景、字体样式等)。只是尺寸和 div 的分层似乎不对。
以前有人遇到过这个问题吗?我可以寻找什么有什么想法吗?
看起来你正在 Internet Explorer 8 中比较它们。微软为本地和互联网服务器引入了不同的渲染模式,让 Web 开发人员泪流满面。
如果没有 X-UA-Compatible 值并且站点位于
本地内网安全区域,会被渲染
默认处于 EmulateIE7 模式。
添加 X-UA-Compatible 标头或 META 以强制使用完整的 IE8 标准模式。
也可以看看http://sharovatov.wordpress.com/2009/05/18/ie8-rendering-modes-theory-and-practice/
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)