当前位置:   article > 正文

CSS3转换 transform_transform: translate(0, -105px);

transform: translate(0, -105px);

目录

一、CSS3转换 transform

2D转换

translate() 平移

rotate() 旋转

scale() 放大缩小

skew() 倾斜

3D转换

1、rotateX(80deg):正值向上翻转

2、rotateY(180deg):正值向右翻转

3、translateZ(100px):正值向前,负值向后 透视原理: 近大远小 。


一、CSS3转换 transform

CSS3 转换是使元素改变形状、尺寸和位置的一种效果。

转换可以对元素进行

移动transform: translateX(200px)、

缩放transform: scaleY(0.5)、

旋转transform: rotate(-90deg)、

拉长或拉伸transform: skewX(-10deg)。

  1. transfrom不会影响其他元素的位置

  2. transfrom对内联元素(inline)没有效果

2D转换

2D转换表现在平面上,主要方法有:

  • translate() 平移

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

  1. div {
  2.    transform: translateX(50px);
  3.    transform: translateY(100px);
  4.    
  5.    /* transform: translateZ(50px); 3d */
  6.  
  7.    transform: translate(50px,100px);
  8. -ms-transform: translate(50px,100px); /* IE 9 */
  9. -webkit-transform: translate(50px,100px); /* Safari and Chrome */  
  10. }

translate中的百分比单位是相对于自身元素的transform: translate(50%,50%);

  • rotate() 旋转

  • 在一个给定度数顺时针旋转的元素。负值是允许的,这样是元素逆时针旋转。 需要带单位deg(角度)

  1. div {
  2.    /* transform: rotateX(30deg); 沿着X轴 从右往左看 顺时针旋转一定角度 3d */
  3.    /* transform: rotateY(30deg); 沿着Y轴 从下往上看 顺时针旋转一定角度 3d */
  4.    
  5.    /* 沿着Z轴 顺时针旋转 2d 以方框中心为原点,顺时针旋转 */
  6. transform: rotate(30deg); 与 transform: rotateZ(30deg) 一样
  7. -ms-transform: rotate(30deg);    /* IE 9 */
  8. -webkit-transform: rotate(30deg);    /* Safari and Chrome */
  9. }

  • scale() 放大缩小

  • 该元素放大或缩小的大小,取决于宽度(X轴)和高度(Y轴)的参数 ,正数表示放大,小数表示缩小。以中心点进行缩放   >0   0-1就是缩小,>1就是放大

  1. div {
  2.    transform: scaleX(2)
  3.   transform: scaleY(0.5);
  4.    
  5.    /* transform: scaleZ(0.5); 3d
  6.    
  7.   transform: scale(2,3); /* 标准语法 */
  8.    -ms-transform:scale(2,3); /* IE 9 */
  9. -webkit-transform: scale(2,3); /* Safari */
  10. }

  • skew() 倾斜

  • 包含两个参数值,分别表示X轴Y轴倾斜的角度,如果第二个参数为空,则默认为0,参数为负表示向相反方向倾斜。

    • skewX(<angle>);表示只在X轴(水平方向)倾斜。

    • skewY(<angle>);表示只在Y轴(垂直方向)倾斜。

  1. div {
  2.    transform: skewX(10deg); /*正值向左倾斜 负值向右倾斜*/
  3.    transform: skewY(10deg); /* 正值就是左向上倾斜 负值就是左向下倾斜*/
  4. transform: skew(30deg,20deg);
  5. -ms-transform: skew(30deg,20deg); /* IE 9 */
  6. -webkit-transform: skew(30deg,20deg); /* Safari and Chrome */
  7. }

3D转换

想要看到立体效果就需要加上透视   透视perspective :透视也称为视距,视距就是眼睛到屏幕的距离,距离视觉点较近的在电脑平面成像越大,越远成像越小,透视的单位是像素px,透视写在被观察元素的父元素上

1、rotateX(80deg):正值向上翻转

2、rotateY(180deg):正值向右翻转

3、translateZ(100px):正值向前,负值向后 透视原理: 近大远小

  1. <div class="box1">
  2.    <div class="son1">1111</div>
  3. </div>
  4.    <style>
  5.        .box1 {
  6.            width: 500px;
  7.            height: 500px;
  8.            border: 2px solid #000;
  9.            margin: 0 auto;
  10.            perspective: 200px;
  11.       }
  12.        .son1 {
  13.            width: 200px;
  14.            height: 200px;
  15.            background-color: red;
  16.            margin: 100px 0 0 100px;
  17.       }
  18.        .box1:hover .son1 {
  19.            transition: 2s;
  20. /* 向下翻转,上边朝里 ,负值就是向下翻转,上边朝外 */
  21.            /* transform: rotateX(80deg); */
  22. /*左边向外,向右旋转,负值就是左边向里,向右旋转*/
  23.            /* transform: rotateY(80deg); */
  24.            transform: translateZ(100px);
  25.       }
  26.    </style>

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/算法构造者/article/detail/60303
推荐阅读
相关标签
  

闽ICP备14008679号