详解IE10 下CSS3 3D变换(3D transfrom)及实例教程

     详解IE10 CSS3 3D变换(3D transfrom)及实例教程,本文章所有实例均可无需修改,直接运行.

     自20114月,微软在其召开的MIX11技术大会上发布了IE10浏览器的首个平台预览版,并宣布面向公众开放免费下载,并随后陆续发布了一系列的预览版,IE10在硬件加速、数据处理速度、网站页面打开速度上都有了提升,在页面处理和视觉处理功能上也进行了加强

但令开发者关注和热议的还是IE10能否更好地支持HTML5? 因为早在IE10之前就有人这样评论IE浏览器:IE浏览器是Web新技术发展道路上的绊脚石。IE6的辉煌时代已经结束,IE7也是这样,即便是IE8,也仍然不能称为一款现代浏览器。而IE9HTML5的支持尚不完全,比如不支持Web SocketsWeb Workers要知道这两项可是对HTML5来说是非常重要的新特性。

    笔者个人认为IE10浏览器单从对HTML5支持来说,是微软IE浏览器系列中具有里程碑意义的产品,笔者评测结果如下:

   

  

由以上评测结果可以看出IE10IE开发者中心给到了一份详细的针对前端开发者的文档,列出了IE10支持的HTML5CSS3新特性。(http://msdn.microsoft.com/en-us/ie/gg192966)

,其中CSS3新特性包括:

CSS3

· css region

· css3多列

· Flexbox

· grid

· 定位浮动(positioned float)

· 3D变换(3D transfrom)

· 动画(animation)

· 渐变(gradient)

· text-shadow

· 去掉样式表限制——IE9之前的版本中,每个页面最多只能加载31个样式表文件,@import也只能最多嵌套4层,IE10中去掉了这些限制。

CSS3新特性众多,今天笔者就IE10CSS3的新特性做详细介绍,并附上实例源码,笔者也会抽更多的时间去总结CSS3的其他特性,并给出实例,希望各位爱好者一起探讨、交流:

· 3D变换(3D transfrom)

    在CSS3中,用Transform功能可以实现文字或图像的旋转、缩放、倾斜、移动这四种类型的变形,这四种变形分别使用rotatescaleskewtranslate这四种方法来实现。将这四种变形结合使用,就会产生不同的效果,使用顺序不同,产生的效果是不一样的。

CSS中使用rotate方法来实现对元素的旋转,在参数中加入角度值,旋转方式为顺时针旋转。

使用格式:   transform: rotate(45deg)  degCSS3“Values and Units”模块中定义的一个角度单位

1)旋转:

rotate() 方法

通过 rotate() 方法,元素顺时针旋转给定的角度。允许负值,元素将逆时针旋转。

案例源代码

<!DOCTYPE html>

<html>

    <head>

          <meta charset="utf-8" />

          <title>IE10下CSS3新特性之3D变换(3D transfrom)应用实例-liwei3gjob</title>

         <style>

          div {

              width: 300px;

             margin: 150px auto;

            background-color: yellow;

             text-align: center;

             -webkit-transform: rotate(45deg);    /* for Chrome || Safari */

             -moz-transform: rotate(45deg);       /* for Firefox */

             -ms-transform: rotate(45deg);        /* for IE  旋转45度*/

             -o-transform: rotate(45deg);         /* for Opera */

         }

         </style>

     </head>

     <body>

         <div>IE10下CSS3新特性之3D变换(3D transfrom)应用实例-liwei3gjob</div>

     </body>

 </html>

 

效果:

2)缩放:

scale() 方法

    通过 scale() 方法,元素的尺寸会增加或减少,根据给定的宽度(轴)和高度(轴)

案例源代码:

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title>IE10下CSS3新特性之3D变换(3D transfrom)应用实例-liwei3gjob</title>

        <style>

        div {

            width: 300px;

            margin: 150px auto;

            background-color: yellow;

            text-align: center;

            -webkit-transform: scale(0.5);     /* for Chrome || Safari */

            -moz-transform: scale(0.5);        /* for Firefox */

            -ms-transform: scale(0.5);         /* for IE 缩放0.5 */

            -o-transform: scale(0.5);          /* for Opera */

        }

        </style>

    </head>

    <body>

        <div>IE10下CSS3新特性之3D变换(3D transfrom)应用实例-liwei3gjob</div>

    </body>

</html>


效果:

3)倾斜:

skew() 方法

通过 skew() 方法,元素转动给定的角度,根据给定的水平线(轴)和垂直线(轴)

源代码:

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title>详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob</title>

        <style>

        div {

            width: 300px;

            margin: 150px auto;

            background-color: yellow;

            text-align: center;

            -webkit-transform: skew(30deg, 30deg);    /* for Chrome || Safari */

            -moz-transform: skew(30deg, 30deg);       /* for Firefox */

            -ms-transform: skew(30deg, 30deg);        /* for IE */

            -o-transform: skew(30deg, 30deg);         /* for Opera */

        }

        </style>

    </head>

    <body>

        <div>详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob</div>

    </body>

</html>


 

效果:

 

4)移动:

translate() 方法

通过 translate() 方法,元素从其当前位置移动,根据给定的 left坐标) 和 top坐标)

源代码:

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title>详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob</title>

        <style>

        div {

            width: 300px;

            margin: 150px auto;

            background-color: yellow;

            text-align: center;

            -webkit-transform: translate(50px, 50px);    /* for Chrome || Safari */

            -moz-transform: translate(50px, 50px);       /* for Firefox */

            -ms-transform: translate(50px, 50px);        /* for IE 值 translate(50px,50px) 把元素从左侧移动 50 像素,从顶端移动 100 像素。

*/

            -o-transform: translate(50px, 50px);         /* for Opera */

        }

        </style>

    </head>

    <body>

        <div>详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob</div>

    </body>

</html>


效果:

3D变换Perspective:

perspective 变换函数对于 3D 变换来说至关重要。该函数会设置查看者的位置,并将可视内容映射到一个视锥上,继而投影到一个 2D 视平面上。如果不指定透视,则 空间中的所有点将平铺到同一个 2D 视平面中,并且变换结果中将不存在景深概念。对于某些变换,例如下图显示的沿 轴的变换,perspective 变换函数对于查看变换的效果来说必不可少。

源代码:

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title>详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob-liwei3gjob</title>

        <style>

        div {

            width: 300px;

            margin: 150px auto;

            background-color: yellow;

            text-align: center;

            -webkit-transform: perspective(500px) rotateY(40deg);     /* for Chrome || Safari */

            -moz-transform: perspective(500px) rotateY(40deg);        /* for Firefox */

            -ms-transform: perspective(500px) rotateY(40deg);         /* for IE 缩放0.5 */

            -o-transform: perspective(500px) rotateY(40deg);          /* for Opera */

        }

        </style>

    </head>

    <body>

        <div>详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob-liwei3gjob</div>

    </body>

</html>


 

效果:

5)动画和过渡实现3D变换:

源代码:

<!DOCTYPE html>

<html>

    <head>

        <meta charset="utf-8" />

        <title>详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob-liwei3gjob</title>

        <style>

        #div1 {

         transform-origin: 150px 500px;

 animation: scrollText 200s linear infinite;     

        }


#parentDiv {

    perspective: 500px;

    perspective-origin: 150px 500px;

}


@keyframes scrollText {

0% { transform: rotateX(45deg) translateY(500px); }

100% { transform: rotateX(45deg) translateY(-9000px); }

}

        </style>

    </head>

    <body>

        <div id="parentDiv"><div id="div1">详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob-liwei3gjob<br>

详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob-liwei3gjob<br>

详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob-liwei3gjob<br>

详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob-liwei3gjob<br>

详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob-liwei3gjob<br>

详解IE10下CSS3 3D变换(3D transfrom)及实例教程-liwei3gjob-liwei3gjob<br></div></div>

    </body>

</html>


 

效果:

文字渐渐离去效果

以上是笔者对IE10CSS3 3D变换(3D transfrom)及实例教程,后续还会抽空整理IE10下更多CSS3新特性的文章,敬请关注,文章原创,转载请注明出处!。

评论 5
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值