让IE 6,7,8支持CSS3的部分属性

让IE 6,7,8支持CSS3的部分属性。今天要给大家介绍的这个htc,它可以让IE浏览器支持CSS3的border-radius、box-shadow、border-image、CSS3 Backgrounds (-pie-background)、Gradients、RGBA属性。不相信?你可以在IE浏览器中打开我的博客看下效果。
下面来一一介绍:
提示:PIE.htc URL路径是相对于当前HTML文件,不是CSS文件.
比如 当前文件在“/”下 ,CSS文件在“/CSS”下,PIE.htc在“/CSS”下,behavior: url(/css/PIE.htc) 而不是behavior: url(PIE.htc);
一、border-radius 圆角

.radius{
  border: 1px solid #696;
  padding: 60px 0;
  text-align: center; width: 200px;
  -webkit-border-radius: 8px;
  -moz-border-radius: 8px;
  border-radius: 8px;
  background: #EEFF99;
  behavior: url(/PIE.htc); /* 可以让IE 6,7,8模拟部分的CSS3属性 */
}

说明:不支持单边的圆角属性,比如: border-top-left-radius,但是你可以这样来写:

border-radius 圆角
border-radius: 5px 10px 15px 20px; /*top-left, top-right, bottom-right, bottom-left*/

二、box-shadow 盒子阴影

border: 1px solid #696;
padding: 60px 0;
text-align: center; width: 200px;
-webkit-box-shadow: #666 0px 2px 3px;
-moz-box-shadow: #666 0px 2px 3px;
box-shadow: #666 0px 2px 3px;
background: #EEFF99;
behavior: url(/PIE.htc);/* 可以让IE 6,7,8模拟部分的CSS3属性 */

说明:不支持text-shadow(文本阴影)

box-shadow 盒子阴影

三、border-image 图片边框

color: white;
border: 8px solid #013D7A;
-webkit-border-radius: 8px;
-moz-border-radius: 8px;
-webkit-border-image: url(img/border.png) 8 8 8 8 stretch;
-moz-border-image: url(img/border.png) 8 8 8 8 stretch;
border-image: url(img/border.png) 8 8 8 8 fill stretch;
behavior: url(PIE.htc);

用到的图片:

border-image 图片边框

四、CSS3 Backgrounds 背景渐变

.gradient{
  background: #CCC; /*fallback for non-CSS3 browsers*/
  background: -webkit-gradient(linear, 0 0, 0 100%, from(#CCC) to(#EEE)); /*old webkit*/
  background: -webkit-linear-gradient(#CCC, #EEE); /*new webkit*/
  background: -moz-linear-gradient(#CCC, #EEE); /*gecko*/
  background: -ms-linear-gradient(#CCC, #EEE); /*IE10*/
  background: -o-linear-gradient(#CCC, #EEE); /*opera 11.10+*/
  background: linear-gradient(#CCC, #EEE); /*future CSS3 browsers*/
  -pie-background: linear-gradient(#CCC, #EEE); /*PIE*/
  behavior: url(PIE.htc);
}

说明:只支持linear-gradient(线性渐变)

linear-gradient 线性渐变

高级运用:

background-size: 50px;
background-color: #0ae;
background-image: -webkit-linear-gradient(rgba(255, 255, 255, .2) 50%, transparent 50%, transparent);
background-image: -moz-linear-gradient(rgba(255, 255, 255, .2) 50%, transparent 50%, transparent);
background-image: -ms-linear-gradient(rgba(255, 255, 255, .2) 50%, transparent 50%, transparent);
background-image: -o-linear-gradient(rgba(255, 255, 255, .2) 50%, transparent 50%, transparent);
background-image: linear-gradient(rgba(255, 255, 255, .2) 50%, transparent 50%, transparent);
-pie-background: linear-gradient(rgba(255, 255, 255, .2) 50%, transparent 50%, transparent) 0 0 / 50px #0ae;
behavior: url(/PIE.htc);
 

更多demo:demo
五、RGBA 颜色值

.rgba{
  padding: 60px 0;
  background: #000;
  background: rgba(0,0,0,.2);
  -pie-background: rgba(0,0,0,.2);
}

说明:不支持box-shadow

RGBA 颜色值

六、IE6 png 透明

.png img{
  -pie-png-fix: true;
  behavior: url(/PIE.htc);
}
.png{
  background-image:url(img.png);
  -pie-background:url(img.png);
  behavior: url(/PIE.htc);
}

 

说明:图片直接用-pie-png-fix: true,背景图片使用-pie-background来修复IE6下png透明的问题

PIE.htc下载: download

转载请注明转自《让IE 6,7,8支持CSS3的部分属性

posted @ 2012-06-16 11:27  无赖君子  阅读(649)  评论(0编辑  收藏  举报