跨浏览器兼容性 HTML5 & CSS3
Cross-browser compatibility HTML5 & CSS3
这可能不是与编程相关的问题,但我仍然在问这个问题,因为我在这个问题上一直在努力。
我发现很多 HTML5 和 CSS3 功能对我的网站设计很有用。但是像往常一样(像所有开发人员一样)我很困惑是否使用它,因为旧的浏览器不支持它。 (例如 css 过渡、3D 变换等)
我知道我可以使用 Modernizr 添加回退
(或)
可以提供备用样式表(如果是 IE9。)
(或)
可以避免使用css3和html5
(或)
使用普通 javascript/jquery 完成所有效果
(或)
使用 html5shiv 或类似工具来添加特定的 html5 命令支持。
我的问题是...
作为开发人员,我受够了向每个不受支持的 transition/every 元素添加如此多的回退。所以,我想到了一些事情,但无法选择做什么..
1) 我是否应该完全避免用户仍然使用旧浏览器而只支持最新的浏览器?
2) 反正我要用 JQuery Mobile 单独制作一个移动网站,我应该使用移动网站作为使用旧浏览器的人的后备吗?
3) 我应该继续添加回退和替代样式表吗?
4) 或者,有没有更好的选择?
由于这些不兼容问题,我的脑袋撞得很厉害。请给我一个开发人员和用户友好的建议。谢谢。
总结:这取决于您的听众。您的担忧没有明确的答案。
如果您的目标是倾向于拥有最新技术的人,您可以从 2 年起支持浏览器。另一方面,如果您的目标是喜欢留在旧操作系统中的人,或者您正在谈论大型 corporation/government,也许您需要提供回退或跳过使用边缘技术以确保跨所有目标用户设备和浏览器的适当用户体验。
OP 在一些评论中说:
But I am not sure whether I have to completely scrap support to people
with old browsers and alternatively offer them with a mobile based
website for pc
如果您的目标拥有最新技术,为什么要为 PC 提供移动网站?你需要决定:如果你认为你不应该支持太旧的浏览器和系统,你不应该尝试维护 2 个站点,因为很大一部分访问者将访问 "edge version"。否则,让您的主站点与旧版浏览器兼容。
顺便说一句,正如我之前所说,对于你的担忧没有明确的答案,因为这都是关于做出决定,时间会告诉你它是否正确。使用分析,检查您站点中最常用的 Web 浏览器是什么,并在您检测到有很大比例的访问者使用旧浏览器时提供回退...
根据我的说法,您应该限制使用旧浏览器的客户端,并在免责声明中提及您的 Web 应用程序需要统一支持所有 HTML5 和 css3 features.You 的浏览器版本可以使用 http://caniuse.com/ 检查对这些元素的支持。这将为您作为开发人员避免很多不便,并避免将样式和 js 文件不必要地堆叠到您的 web 应用程序中,从而使它 sluggish.Even 我遇到了类似的问题,我知道处理跨浏览器是多么令人恼火 issues.Cheers :)
这可能不是与编程相关的问题,但我仍然在问这个问题,因为我在这个问题上一直在努力。
我发现很多 HTML5 和 CSS3 功能对我的网站设计很有用。但是像往常一样(像所有开发人员一样)我很困惑是否使用它,因为旧的浏览器不支持它。 (例如 css 过渡、3D 变换等)
我知道我可以使用 Modernizr 添加回退
(或)
可以提供备用样式表(如果是 IE9。)
(或)
可以避免使用css3和html5
(或)
使用普通 javascript/jquery 完成所有效果
(或)
使用 html5shiv 或类似工具来添加特定的 html5 命令支持。
我的问题是...
作为开发人员,我受够了向每个不受支持的 transition/every 元素添加如此多的回退。所以,我想到了一些事情,但无法选择做什么..
1) 我是否应该完全避免用户仍然使用旧浏览器而只支持最新的浏览器?
2) 反正我要用 JQuery Mobile 单独制作一个移动网站,我应该使用移动网站作为使用旧浏览器的人的后备吗?
3) 我应该继续添加回退和替代样式表吗?
4) 或者,有没有更好的选择?
由于这些不兼容问题,我的脑袋撞得很厉害。请给我一个开发人员和用户友好的建议。谢谢。
总结:这取决于您的听众。您的担忧没有明确的答案。
如果您的目标是倾向于拥有最新技术的人,您可以从 2 年起支持浏览器。另一方面,如果您的目标是喜欢留在旧操作系统中的人,或者您正在谈论大型 corporation/government,也许您需要提供回退或跳过使用边缘技术以确保跨所有目标用户设备和浏览器的适当用户体验。
OP 在一些评论中说:
But I am not sure whether I have to completely scrap support to people with old browsers and alternatively offer them with a mobile based website for pc
如果您的目标拥有最新技术,为什么要为 PC 提供移动网站?你需要决定:如果你认为你不应该支持太旧的浏览器和系统,你不应该尝试维护 2 个站点,因为很大一部分访问者将访问 "edge version"。否则,让您的主站点与旧版浏览器兼容。
顺便说一句,正如我之前所说,对于你的担忧没有明确的答案,因为这都是关于做出决定,时间会告诉你它是否正确。使用分析,检查您站点中最常用的 Web 浏览器是什么,并在您检测到有很大比例的访问者使用旧浏览器时提供回退...
根据我的说法,您应该限制使用旧浏览器的客户端,并在免责声明中提及您的 Web 应用程序需要统一支持所有 HTML5 和 css3 features.You 的浏览器版本可以使用 http://caniuse.com/ 检查对这些元素的支持。这将为您作为开发人员避免很多不便,并避免将样式和 js 文件不必要地堆叠到您的 web 应用程序中,从而使它 sluggish.Even 我遇到了类似的问题,我知道处理跨浏览器是多么令人恼火 issues.Cheers :)