我是网页设计的新手,我的网站也遇到了一些问题。 首先,它不是跨浏览器兼容的网站。我想这样做,但我不知道该怎么做。我已经阅读了一些关于此的文章,但它们没有任何帮助。请告诉我如何设计跨浏览器网站。
其次,我已经验证了我网站的CSS文件并得到了这些错误:
218 .box属性border-radius在CSS级别2.1中不存在,但存在于:6px 6px 219 .box属性-moz-border-radius不存在:6px 6px 220 .box属性-webkit-border-radius不存在:6px 6px。
但我不知道如何解决这个问题。
答案 0 :(得分:3)
border-radius
是一个CSS3属性,因此,如果您将其验证为CSS2,则会报告错误。
-moz-border-radius
和-webkit-border-radius
是同一媒体资源的“供应商前缀”版本。供应商前缀由浏览器制造商提供给他们已实现的功能,但这些功能要么尚未标准化,要么其实现尚未完成。无论哪种方式,它都允许网站设计师在正式准备之前使用该功能。
如果您正在设计跨浏览器网站,则需要考虑要包含哪些浏览器。例如,您是否希望花时间在非常旧版本的浏览器中使用它(可能没有人再使用它)?您需要决定支持哪些旧版本。
这与border-radius
相关,因为当前版本的Firefox,Chrome和Safari都支持border-radius
而没有供应商前缀。实际上,多个版本并不需要供应商前缀,特别是对于Webkit浏览器。因此,您可能完全有理由放弃这些带前缀的声明。您需要检查哪些浏览器需要它们的版本,并决定是否要支持这些浏览器。
要考虑的另一个因素是,直到最近,IE根本不支持border-radius
,甚至不支持供应商前缀。 IE9确实支持它,但大多数IE用户仍在运行IE8。
如果你想让border-radius
为IE工作,你需要做一些黑客攻击。目前最好的选择是CSS3Pie。你的另一个选择是忽略它并让IE用户有方角。由于这不会影响您网站的可用性,因此您可能认为这是最简单的选择。
所有浏览器和浏览器版本都有自己支持的功能组合。像CanIUse.com这样的网站对于帮助您确定是否使用任何特定功能非常宝贵:它显示了哪些浏览器和版本支持它,允许您做出是否使用它的明智决定。
最后,我可以为您制作跨浏览器的网站提供最重要的建议:在所有浏览器中测试它,以及您想要支持的所有浏览器版本。 (不要只是假设如果它在一个版本的浏览器中工作,它将在其他版本中工作 - 你需要全部测试它们。)
答案 1 :(得分:0)
要修复一个跨浏览器的网站网站,最好的方法是在开始时考虑到这一点并逐步开发,检查每个浏览器是否有任何差异,并尝试找到跨浏览器解决方案。你可以通过一个完成的网站实现它,但当然它要困难得多。如果您有特定问题,可以使用stackoverflow.com获取有关任何编程问题的帮助。
关于您获得的错误是因为您尝试使用css 2.1标准验证css 3文件。转到http://jigsaw.w3.org/css-validator/#validate_by_uri+with_options并选择配置文件级别3 css以验证css 3。
答案 2 :(得分:0)
要研究的好处是jquery圆角。它很简单,几乎可以完成css3 border-radius所做的一切。缺点是创建一个边框,如果你想要1px边框,你必须将你的目标div包装在另一个div中,并将外部设置为1 px的填充。
这是网站:http://plugins.jquery.com/project/corners 下载zip包以查看演示。
这适用于所有浏览器和IE6 +,如果该浏览器存在,它还会调整正确的css属性。