美文网首页
CSS3 2D转换

CSS3 2D转换

作者: maskerII | 来源:发表于2019-05-12 14:34 被阅读0次

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>CSS3 2D转换</title>
    <style>
        div.ex1{
            width: 200px;
            height: 100px;
            background-color: yellow;
            text-align: center;

            /* Rotate div*/
            transform: rotate(30deg);
            -ms-transform: rotate(30deg); /* IE 9*/
            -webkit-transform: rotate(30deg); /*  Safari and Chrome*/
        }

        div.ex2{
            width: 100px;
            height: 75px;
            background-color: red;
            border: 1px solid black;
        }


        div.ex2#div2{
            transform:translate(50px,100px);
            -ms-transform:translate(50px,100px); /* IE 9 */
            -webkit-transform:translate(50px,100px); /* Safari and Chrome */
        }

        div.ex3{
            width: 100px;
            height: 75px;
            background-color: red;
            border: 1px solid black;
        }

        div.ex3#div3{
            transform: rotate(30deg);
            -ms-transform: rotate(30deg);
            -webkit-transform: rotate(30deg);
        }

        div.ex4{
            margin: 150px;
            width: 200px;
            height: 100px;
            background-color: yellow;
            border: 1px solid black;
            -ms-transform: scale(2,3);
            -webkit-transform: scale(2,3);
            transform: scale(2,3);
        }

        div.ex5{
            width: 100px;
            height: 75px;
            background-color: red;
            border: 1px solid black;
        }

        div.ex5#div5{
            -ms-transform: skew(30deg,20deg);
            -webkit-transform: skew(30deg,20deg);
            transform: skew(30deg,20deg);
        }

        div.ex6{
            width: 100px;
            height: 75px;
            background-color: red;
            border: 1px solid black;
        }

        div.ex6#div6{
            -ms-transform: matrix(0.866,0.5,-0.5,0.866,0,0);
            -webkit-transform: matrix(0.866,0.5,-0.5,0.866,0,0);
            transform: matrix(0.866,0.5,-0.5,0.866,0,0);
        }




    </style>
</head>
<body>
<h2>CSS3 2D 转换</h2>
<div class="ex1">Hello</div>
<br><br>
<h2>translate 转换</h2>

<div class="ex2">Hello. This is a DIV element.</div>

<div class="ex2" id="div2">Hello. This is a DIV element.</div>

<br><br><br><br>
<h2>rotate 转换</h2>
<div class="ex3">你好 这是一个DIV 元素</div>
<div class="ex3" id="div3">你好 这是一个DIV元素</div>

<br><br><br><br>

<h2>scale 转换</h2>
<p>scale() 方法用于增加或缩小元素的大小。</p>

<div class="ex4">
    div 元素的宽度是原始大小的两倍,高度是原始大小的三倍。
</div>

<br><br><br><br>

<h2>skew 转换</h2>
<div class="ex5">Hello. This is a DIV element.</div>

<div class="ex5" id="div5">Hello. This is a DIV element.</div>

<br><br><br><br>

<h2>matrix 转换</h2>
<div class="ex6">Hello. This is a DIV element.</div>

<div class="ex6" id="div6">Hello. This is a DIV element.</div>

</body>
</html>

CSS3 转换
CSS3 转换可以可以对元素进行移动、缩放、转动、拉长或拉伸。

1、浏览器支持

表格中的数字表示支持该属性的第一个浏览器版本号。

紧跟在 -webkit-, -ms- 或 -moz- 前的数字为支持该前缀属性的第一个浏览器版本号。

属性                Chrome          IE                  Firefox              Safari             Opera
transform             36.0           10.0                 16.0                                    23.0
                      4.0 -webkit-   9.0 -ms-             3.5 -moz-            3.2 -webkit-       15.0 -webkit-
                                                                                                  12.1
                                                                                                  10.5 -o-

transform-origin      36.0            10.0                16.0                                    23.0
(two-value syntax)    4.0 -webkit-    9.0 -ms-            3.5 -moz-         3.2 -webkit-          15.0 -webkit-
                                                                                                  12.1
                                                                                                  10.5 -o-

Internet Explorer 10, Firefox, 和 Opera支持transform 属性.

Chrome 和 Safari 要求前缀 -webkit- 版本.

注意: Internet Explorer 9 要求前缀 -ms- 版本.

2、2D 转换

2D变换方法:

translate()
rotate()
scale()
skew()
matrix()

实例
div
{
transform: rotate(30deg);
-ms-transform: rotate(30deg); /* IE 9 */
-webkit-transform: rotate(30deg); /* Safari and Chrome */
}

3、translate() 方法

Translate
translate()方法,根据左(X轴)和顶部(Y轴)位置给定的参数,从当前元素位置移动。

OperaSafariChromeFirefoxInternet Explorer
实例

div
{
transform: translate(50px,100px);
-ms-transform: translate(50px,100px); /* IE 9 */
-webkit-transform: translate(50px,100px); /* Safari and Chrome */
}

translate值(50px,100px)是从左边元素移动50个像素,并从顶部移动100像素。

4、rotate() 方法

Rotate
rotate()方法,在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。

实例

div
{
transform: rotate(30deg);
-ms-transform: rotate(30deg); /* IE 9 */
-webkit-transform: rotate(30deg); /* Safari and Chrome */
}

rotate值(30deg)元素顺时针旋转30度。

5、skew() 方法

语法
transform:skew(<angle> [,<angle>]);
包含两个参数值,分别表示X轴和Y轴倾斜的角度,如果第二个参数为空,则默认为0,参数为负表示向相反方向倾斜。

skewX(<angle>);表示只在X轴(水平方向)倾斜。
skewY(<angle>);表示只在Y轴(垂直方向)倾斜。
OperaSafariChromeFirefoxInternet Explorer
实例

div
{
transform: skew(30deg,20deg);
-ms-transform: skew(30deg,20deg); /* IE 9 */
-webkit-transform: skew(30deg,20deg); /* Safari and Chrome */
}

6、matrix() 方法

Rotate
matrix()方法和2D变换方法合并成一个。

matrix 方法有六个参数,包含旋转,缩放,移动(平移)和倾斜功能。

实例
利用matrix()方法旋转div元素30°

div
{
transform:matrix(0.866,0.5,-0.5,0.866,0,0);
-ms-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* IE 9 */
-webkit-transform:matrix(0.866,0.5,-0.5,0.866,0,0); /* Safari and Chrome */
}

7、新转换属性

以下列出了所有的转换属性:

Property 描述 CSS
transform 适用于2D或3D转换的元素 3
transform-origin 允许您更改转化元素位置 3
2D 转换方法
函数 描述
matrix(n,n,n,n,n,n) 定义 2D 转换,使用六个值的矩阵。
translate(x,y) 定义 2D 转换,沿着 X 和 Y 轴移动元素。
translateX(n) 定义 2D 转换,沿着 X 轴移动元素。
translateY(n) 定义 2D 转换,沿着 Y 轴移动元素。
scale(x,y) 定义 2D 缩放转换,改变元素的宽度和高度。
scaleX(n) 定义 2D 缩放转换,改变元素的宽度。
scaleY(n) 定义 2D 缩放转换,改变元素的高度。
rotate(angle) 定义 2D 旋转,在参数中规定角度。
skew(x-angle,y-angle) 定义 2D 倾斜转换,沿着 X 和 Y 轴。
skewX(angle) 定义 2D 倾斜转换,沿着 X 轴。
skewY(angle) 定义 2D 倾斜转换,沿着 Y 轴。

相关文章

  • CSS3 2D转换

    CSS3 转换 通过 CSS3 转换,我们能够对元素进行移动、缩放、转动、拉长或拉伸 2D转换 2D 转换方法: ...

  • CSS3 2D<===>3D转换

    CSS3 2D 转换 CSS3 转换CSS3转换,我们可以移动,比例化,反过来,旋转,和拉伸元素。 它是如何工作?...

  • CSS3 转换(1):2D

    知识点:CSS3 TransformCSS3 2D转换CSS3 3D转换CSS3 Transform与坐标系统CS...

  • CSS3中2D和3D的转换

    CSS3 转换:  CSS3转换,我们可以移动,比例化,反过来,旋转,和拉伸元素。 2D转换方法: transla...

  • CSS3 2D转换 、3D转换

    CSS3 2D转换 通过 2D 转换,我们能够对元素进行移动、缩放、转动、拉长或拉伸。 Internet Expl...

  • css动画

    css3动画 过渡:transition 2D 转换 transform 3D 转换 transform 动画:a...

  • 网络编程(六)之CSS3 2D/3D及动画

    下面仍然是跟着pink老师学习CSS3更高级的用法。 一、 CSS3 2D转换 转换(transform)是CSS...

  • css扩展/CSS3

    CSS3 边框 CSS3 圆角属性 新的背景属性 新文本属性 新转换属性 以下列出了所有的转换属性: 2D 转换方...

  • CSS3总结

    CSS3 calc() 计算属性 CSS3效果的简单事例 圆角, 圆形div 阴影2D 转换:放大、缩小、偏移、旋...

  • 学习笔记-CSS-2017.2.17

    一、CSS3 2D 转换 1、transform(rotate(deg))通过 rotate() 方法,元素顺时针...

网友评论

      本文标题:CSS3 2D转换

      本文链接:https://www.haomeiwen.com/subject/hrxtaqtx.html