如何处理不支持HTML5 / CSS3的浏览器

时间:2011-03-14 08:00:35

标签: html5

我一直在研究HTML5和CSS3,并且一直很喜欢它。 了解了modernizr API,但我陷入了困境,这导致了进一步的混淆:

我如何编写适合浏览器之间不兼容情况的代码?

这导致以下混淆:

  • 如果我将doctype写为<!DOCTYPE HTML>并且我的页面是在IE6中访问的,那么IE6将处理该页面吗?
  • 如果我尝试包含<video>标签并且IE6 / IE7IE8(不支持此标签)再次访问该页面,那么我应该如何回滚闪存呢?我应该使用一些JS来恰当地显示/隐藏内容吗?

我很想听听你们的一些想法。 如果需要,请将此帖子标记为社区维基。

谢谢!

2 个答案:

答案 0 :(得分:4)

直接回答你的问题,

  1. 您必须意识到新的<!DOCTYPE HTML> doctype仅用于触发浏览器中的标准兼容模式。传统上,从浏览器的角度来看,这个(称为doctype切换)是doctype用于唯一的东西。因此,简而言之,如果您使用的是已触发标准模式的doctype,则IE6不会发生任何变化。

  2. 您可以使用Modernizr之类的脚本进行特征检测。这将允许您仅在需要时使用Flash作为后备,并为支持它们的浏览器提供正确类型的电影。即使您不使用该脚本,您仍然可以查看其来源以了解如何完成此操作。

    或者,<video><audio>标记专门允许将后备内容嵌入其中。这意味着您只需使用<video>标记包装Flash内容,如果浏览器不支持它们,则只会使用后备内容。

答案 1 :(得分:1)

您需要的三件事:
 1.查看supported features列表  2.检测HTML5 features
 3. Use Graceful Degradation