【问题标题】:Internet Explorer 8 and CSS3Internet Explorer 8 和 CSS3
【发布时间】:2012-10-24 05:15:23
【问题描述】:

如何使您的网站 CSS3 与早于 IE9 的 Internet Explorer 版本兼容不使用 CSS3pie、normalize 等插件

CSS3Pie 是我使用的一个很棒的工具,但它变得不方便,因为我有一些带有边框左半径的元素不适用于插件。

【问题讨论】:

  • @c69:两者的信息会很好。我浏览了主要网站,但找不到任何东西
  • 您期待什么样的答案? IE10 之前的 IE 版本不支持大部分 CSS3。因此,您要么为它们单独编码,要么安装一些试图模拟缺失功能的东西(如 CSS3PIE),或者在这些版本的 IE 中运行时没有扩展功能。你还要求什么?

标签: internet-explorer css internet-explorer-8 cross-browser


【解决方案1】:

IE8 不支持 CSS3。你已经知道了。如果您正在寻找一种方法来在 IE8 中获得 CSS 圆角而不需要某种 hack,那么您会失望的。

解决方案:

  1. 使用您已经知道的“渐进增强”技术,例如 CSS3Pie。几乎所有这些都是基于 Javascript 的 hack,而且没有一个是完美的。你已经知道 CSS3Pie 的问题了。您讨论的问题是一个相对较小的问题,并且很容易解决;如果您不愿意解决这个问题,那么您就不可能有更好的选择。

    可以在此处找到这些 polyfill 的相当全面的列表:https://github.com/Modernizr/Modernizr/wiki/HTML5-Cross-Browser-Polyfills

  2. 优雅降级。这基本上意味着接受旧浏览器缺少某些功能,并编写您的网站,以便如果缺少这些功能,它仍然可以工作;也许没有那么好,但可以使用。对于border-radius,这很简单:接受它在IE8 中不起作用。圆角是不错的选择,但如果没有圆角,网站不会因无法使用而崩溃。

  3. 镀铬框架。这是谷歌为 IE 编写的插件,允许它使用与 Chrome 浏览器相同的渲染引擎来渲染页面。这是对浏览器内部的重大破解,但它确实运行良好;不再担心那些缺失的功能和渲染故障。但是,它需要最终用户安装插件,所以虽然它作为一个选项很好,并且您可以指定它是否可用,但如果您可以控制最终用户的系统,您只能真正依赖它 -例如,在公司网络中,您可以确保它已安装在所有机器上。

这些是你的选择。

【讨论】:

  • 很好的答案,尤其是第 2 点。我认为 Web 开发人员应该将优雅降级视为大多数情况下的首选和最佳解决方案。
猜你喜欢
  • 1970-01-01
  • 2013-12-11
  • 1970-01-01
  • 2010-09-13
  • 2012-08-27
  • 2012-02-07
  • 2010-11-10
  • 2011-03-24
  • 2023-03-22
相关资源
最近更新 更多