有没有人知道在ASP.NET中学习跨浏览器开发的任何好资源?具体来说,是什么导致页面在FF / Chrome / IE中看起来不同,开发时遇到了什么问题,如何在新项目中解决此问题等。
答案 0 :(得分:4)
跨浏览器网站的一个好工具是微软SuperPreview。这仍处于测试阶段,但到目前为止,它似乎对网络开发有很大的帮助。
希望有所帮助!
答案 1 :(得分:3)
我找不到这种类型信息的特定资源。一般来说,我在遇到错误时找到了这些信息。但第一步是至少学习不同浏览器使用的渲染引擎的高级概述。他们都有自己特定的“怪癖”,因此存在像http://www.quirksmode.org/这样的网站。
与不同引擎相关的另一件事是理解开发的盒子模型以及在每个浏览器(以及不同版本的浏览器)中如何区别对待CSS。如果您需要非常担心浏览器之间的像素完美匹配,那么您将获得大量的乐趣。
与此相关,另一件事是查看CSS重置表。这使得不同浏览器之间的环境非常相似。这使得开发变得更容易,但仍然不能弄乱布局。
答案 2 :(得分:1)
这确实应该是HTML标记和CSS的关注点,而不是ASP.NET。这将有助于您的搜索。
对我而言,这是一个难以学习的问题,以及大量的Google搜索。
Quirksmode.org是一个很好的参考,因为Agent_9191建议,还有其他更专业的&详细的参考文献散布在整个网络上。
但是,如果您尝试阅读并理解浏览器之间的所有不兼容性,则很容易被淹没。所以我经常需要具体的例子来学习。
为此,我非常喜欢alistapart.com。在以跨浏览器兼容的方式创建布局时,该网站上有很多好东西。
答案 3 :(得分:1)
如果您只是使用ASP.net提供的标准普通服务器控件,通常您不会遇到任何ASP.net和跨浏览器兼容性问题。当问题开始时(正如CD所说)当你正在做一些更高级的东西,比如使用ASP.net Ajax控件工具包或jQuery或其他任何东西进行Ajax调用时,你仍然要求向后兼容直到IE6(这会导致大多数问题!)。
我所经历的,
时出现跨浏览器问题通常,仅针对ASP.net,让页面/控件/自定义服务器控制生命周期非常重要。你应该对此有一个好主意,但网上有很多信息。您将使用ASP.net ViewState遇到的大多数问题都是由于对相应控件的生命周期的错误处理(即将动态元素附加到早/晚,在页面的OnInit中读取ViewState并想知道为什么您的值为空等) ...)
答案 4 :(得分:1)
对于ASP.NET特定方面,我能想到的最重要的提示是尽可能避免使用更复杂的ASP.NET控件。框架生成的标记越多,放松所需的东西就越多。老实说,人们可以在一天结束时使用转发器和用户控件完成ASP.NET中需要做的所有事情。这是人们在1.1天内必须做的事情,以获得类似标记的东西。
现在,如果您无法避免更复杂的控件,我还会查看Css Friendly Control Adapters。他们可以帮助减少其他一些东西。