ASP.NET - IE8中控件位置的问题

时间:2009-11-11 09:15:46

标签: c# asp.net internet-explorer-8

最近我开始在IE8中测试我的网络应用程序,但是,我注意到我的控件的位置现在到处都是。当我用IE7和Firefox 3.5测试我的应用程序时,这并不明显。我知道有一个建议的“修复”来解决这个问题,包括

  

meta http-equiv =“X-UA-Compatible”content =“IE = EmulateIE7”

进入HTML源代码,但我认为如果我将应用程序更改为本机支持IE8,而不是退回到兼容模式,可能会更好。

我的所有控件都是通过偏离正常流量来定位的,但我也注意到即使它们位于正常流量或绝对位置,问题仍然存在。

我正在使用C#完全开发我的应用程序,因为我对CSS一无所知,但如果这是解决此问题的途径,我毫不犹豫地改变它。

感谢。

编辑:我正在使用Visual Studio 2005 btw

编辑:在更多论坛潜水后,我找到了一个很好的博客条目@ http://blogs.msdn.com/ie/archive/2009/03/12/site-compatibility-and-ie8.aspx的链接,其中列出了IE8标准视图,IE8兼容性视图和可能破坏网站的IE7之间的一些快速差异。希望它可以帮助面临类似问题的其他人。

3 个答案:

答案 0 :(得分:3)

如果您正在构建网站,则必须使用CSS。

这是从CSS开始的好资源 - http://www.w3.org/Style/CSS/learning

Css将允许您创建适用于大多数现代浏览器的网站。这是一个很好的表格,用于匹配CSS版本和浏览器版本:http://www.quirksmode.org/css/contents.html

然而,有一些浏览器 - 特别是IE6--没有正确实现CSS guidlines。这导致需要针对任何远程复杂的IE6特定的CSS黑客攻击。

对于浏览器黑客来说,这是一个很好的论点:

http://articles.sitepoint.com/article/browser-specific-css-hacks#

答案 1 :(得分:3)

老实说,问题实际上在于你的标记和CSS规则。 IE8更符合W3c CSS标准。所以你很可能遇到过你不了解的FireFox,Opera,Chrome和Safari的问题。非IE浏览器不会尊重您的IE7标签。

我的建议是让你的页面在新的浏览器中运行,保持相对简单,这样你就可以在IE 6和7中使用它.IE 6确实需要消失,但是太多的人不会升级。 IE 7老实说也需要逐步淘汰。

我一直在写一个系列我称之为Thin ASP.NET,它专注于为ASP.NET网站的CSS布局做事,http://professionalaspnet.com/archive/tags/Thin+ASP/default.aspx

答案 2 :(得分:0)

当你第一次开始使用它时,CSS可能相当令人生畏,我个人喜欢使用CSS编辑器。我使用Skybound Stylizer(www.skybound.ca)。他们提供免费的基本版本,这是您开始甚至发布网站所需的全部内容,但只需79美元,我升级到他们的终极版本以表示我的支持,我仍然喜欢它:)

我建议检查一下。它将允许您进行更改并立即查看发生的情况,它还支持像在IE或Firefox中一样查看页面的功能,并提供额外支持,以便为单独的浏览器轻松制作条件CSS注释。

希望这有帮助, 大卫。