使用ASP.NET 4.5(vs2012)设计的网页,其中设计了一个Panel控件,这个控件外加方框,在方框的上部上加一个标题,效果如图1左上的“组合查询”:
图1:由fieldset和legend标签构成的方框及标题效果,IE10通过IIS8 Express解析正常
这种效果,在Chrome和Firefox上,无论是使用IIS7(服务器上)还是IIS8 Express(本地机,随VS2012一起安装的)解析都是正常的。
但对于IE10,出现了问题,如果通过访问本地的IIS8 Express,结果是正常的,图1即是IE10通过本地访问得出结果的截图;但如果访问服务器同样的网页,即通过服务器上的IIS7进行解析,效果图2所示:
图2:IE10通过IIS8解析,没有了方框线及“组合查询”标题
通过查询生成的HTML代码,里面根本没有生成fieldset和legend标签。同样都是IE10,却由于不同的IIS版本导致不同的渲染效果,感觉不像是IE10本身的问题,但Chrome及FF在两个不同版本的IIS下都没有问题。
同样试了一下IE6 7 8 9,在IIS7上都可以正常解析出fieldset和legend,所以,能不能这样理解:IE10和IIS7的结合上出现了问题,使得fieldset和legend标签无法解析出来。而这个问题很可能是IE10太新了,以至于和IIS7无法配合,只能和IIS8才能配合得上?
有谁知道原因?如何解决它?
建议检查一下IE10的Document Mode,参考:终于找到IE10 Browser Mode为IE10 compat View的真相
如果是Docment Mode的问题,在IIS中将X-UA-Compatible设置为IE=edge