让IE8支持HTML5及canvas功能!

让本文源自 博客园 Ada zheng 的《让IE8支持HTML5及canvas!》

微软出的IE9支持HTML5,但因为不支持XP系统,暂时我还用不了。

即使能用,现阶段如果开发HTML5页面,并考虑到兼容性问题的话,恐怕也得让自己的界面支持IE6-8吧。

首先,需要让IE支持HTML5标签。这个简单,随便在网上搜一下就能找到。下载一个html5.js,并拷贝到自己的目录里就可以了。

现在写一段简单代码,其功能是在页面上放置一个canvas,并画一个红色圆圈。

复制代码
复制代码
 1 
 2 
 3  
 4    IE8支持HTML5+CSS3 
 5 
 6 
 7 
24 
25 
38 
39 
40 
41 
42 
43 
复制代码
复制代码

段代码,在遨游和Firefox上,都可以用。但在IE8里,不但什么都没有,下面状态栏里还会显示黄色小叹号,点开,告诉我们,ctx根本没取到canvas。

 

第一步,我们加上对html5的支持。

现在再看,会出现一个黑漆漆的框框,说明IE8已经认识canvas标签了。但红圈圈还是没出来,下面状态栏仍然提示我们JS里压根没取到canvas。这说明IE还只是认识了canvas是个合法标签而已,至于怎么处理它,对不起,俺还不会。

 

第二步,加上对canvas的支持。

下载excanvas_r3.zip,解压后,把excanvas.compiled.js拷贝到自己的目录里,引用它。现在看看,哈,一个红色圈圈出现了!js works!


如果您足够细心,您会发现,样式表中存在这么两行:

    border-radius: 20px;
    box-shadow: 0 0 40px #222;

这是CSS3的样式哦!border-radius说明我们要的黑框框四周应该是圆角才对,但现在却四愣八插的;box-shadow那儿还有shadow呢。。。

 

下面是第三步,让IE支持CSS3。在cv选择器的最后,增加一句话

behavior: url(/public/ie-css3.htc);
复制代码
复制代码
#cv {
    width: 600px; height: 400px;
    background: #000;
    border-radius: 20px;
    padding: 20px;
    margin: 20px auto;
    box-shadow: 0 0 40px #222;
    behavior: url(/public/ie-css3.htc);
}
复制代码
复制代码

其中,ie-css3.htc去 http://fetchak.com/ie-css3/ 下载,具体它能够支持多少CSS3特性,网站说的很清楚,我就不费口舌了。

 

最后,在我们下载了三个文件,增加了三句话之后,看看效果吧。嘻嘻!




总体来说就3点:

1.添加对html5的支持:
 
2.添加对canvas的支持:
下载excanvas_r3.zip,引用excanvas.compiled.js。
 
3.添加对css3的支持:
  哪个选择器用到CSS3就在哪个选择器后添加:
  behavior: url(/public/ie-css3.htc);
  ie-css3.htc需要在网上下载;

你可能感兴趣的:(前端,html5,ie,8,canvas)