我有一个ASP.NET 1.1应用程序正在被许多客户端使用。其中一些客户端最近开始发现只在IE中使用HTML呈现的问题。所有div标记现在都呈现为表。
我们还有一台运行IE7的开发机器,它在一个场景中显示了相同的问题:当应用程序安装在机器上并使用同一台机器时,我们浏览到应用程序。
这个开发机器可以查看远程安装的应用程序和其他客户端,使用IE7,可以查看开发机器的安装情况,没有任何问题。
所有Div标记都已被表标记替换。
这是IE中正确呈现的HTML示例:
<div id="wtbToolbar"></div>这就是在IE中相同的HTML在机器上呈现问题的方式:
<table id="wtbToolbar"><tr><td></td></tr></table>这个HTML的来源是一个ASP.NET控件,它继承自WebControl。WebControl.TagKey和WebControl.TagName属性已经覆盖以返回Div。
web.config文件已经包含了一个browserCaps部分,以纠正火狐中类似的问题。
也许我需要更新browserCaps以包括IE?
谢谢
发布于 2009-07-23 14:15:11
ASP.NET 1.1 (特别是)可以呈现不同的HTML,这取决于它如何检测到浏览器的“功能”。它将浏览器称为"UpLevel“或"DownLevel”,并根据此提供不同的输出。
ASP .NET基于名为browserCaps文件的检测。您可以在编码恐怖上阅读更多有关这方面的内容。更改browserCaps文件中的某些内容可以解决这个问题,这是可能的。关于这方面的另一篇好文章是ASP.NET的自适应呈现。祝好运!
https://stackoverflow.com/questions/1171793
复制相似问题