我正在尝试找出确保跨浏览器兼容性的最有效方法。我做了一些研究并学到了一些有趣的东西,比如Mozilla / Firefox无法处理名称以数字开头的类。有没有办法让 CSS 适用于任何浏览器,或者更好的方法是开发多个 CSS 并添加代码以根据所使用的浏览器选择使用哪些?
答案 0 :(得分:3)
您可以考虑使用CSS框架,例如Blueprint。它包括一个应该有帮助的CSS重置。
此外,您可能需要查看Yahoo's CSS reset
答案 1 :(得分:3)
另外澄清一点:
...我做了一些研究并学到了一些有趣的东西,比如Mozilla / Firefox无法处理一个名称以数字开头的类。 ..
很抱歉,但这不是Mozilla的限制,它在CSS规范中:类名不能以数字开头。 允许他们访问的任何浏览器都没有正确执行规则。
在StackOverFlow上回答here。规范的相关部分位于http://www.w3.org/TR/CSS21/syndata.html#characters(见第2段)。
答案 2 :(得分:2)
回答你的问题:除非你只使用所有可用css的极小子集(选择器,值等),否则无法使用一个通用css制作页面并在所有浏览器中均匀显示它)。
我的工作方式是:
答案 3 :(得分:1)
一个好的起点是使用CSS重置,例如:http://developer.yahoo.com/yui/reset/
答案 4 :(得分:1)
您的目标应该是适用于所有浏览器的CSS。如果你开始使用每个浏览器的CSS文件,你在哪里停止?移动Safari?群? Konqueror的?每个支持的浏览器的每个版本?
最终,你可能需要妥协,但是当你到达那里时你可以越过那条路。
答案 5 :(得分:1)
无论您的基础架构/框架/等,您都应该在所有主流浏览器上测试您的代码。如果可能,请避免使用样式表来解决浏览器特定问浏览器会改变和适应,这意味着当新的浏览器问世时,你可能不得不更新一堆网站。
CSS是一个变幻无常的野兽,除了大量的尽职调查和测试之外,我还没有找到任何涵盖所有怪癖的解决方案。答案 6 :(得分:0)
您可以使用一个为您执行此操作的框架,例如GWT,但请记住,您仍然会遇到一些问题。