返回顶部
首页 > 资讯 > 后端开发 > Python >CSS3 转换(Transform)
  • 600
分享到

CSS3 转换(Transform)

Transform 2023-01-31 01:01:16 600人浏览 安东尼

Python 官方文档:入门教程 => 点击学习

摘要

转换 transform能够对元素进行移动、缩放、转动、拉长或拉伸在CSS中,允许元素实现 2D 和 3D的转换效果,主要包含 :旋转,缩放,移动,倾斜        2D :元素只能在X轴和Y轴平面上发生变化       3D :元素还可

转换 transform

能够对元素进行移动、缩放、转动、拉长或拉伸


CSS中,允许元素实现 2D 和 3D的转换效果,主要包含 :旋转,缩放,移动,倾斜        

2D :元素只能在X轴和Y轴平面上发生变化       

3D :元素还可以在 Z轴上发生变化


取值:

none:无转换

2D Transform Functions:

matrix():

以一个含六值的(a,b,c,d,e,f)变换矩阵的形式指定一个2D变换,相当于直接应用一个[a,b,c,d,e,f]变换矩阵

translate():

指定对象的2D translation(2D平移)。第一个参数对应X轴,第二个参数对应Y轴。如果第二个参数未提供,则默认值为0

translatex():

指定对象X轴(水平方向)的平移

translatey():

指定对象Y轴(垂直方向)的平移

rotate():

指定对象的2D rotation(2D旋转),需先有 <' transfORM-origin '> 属性的定义

scale():

指定对象的2D scale(2D缩放)。第一个参数对应X轴,第二个参数对应Y轴。如果第二个参数未提供,则默认取第一个参数的值

scalex():

指定对象X轴的(水平方向)缩放

scaley():

指定对象Y轴的(垂直方向)缩放

skew():

指定对象skew transformation(斜切扭曲)。第一个参数对应X轴,第二个参数对应Y轴。如果第二个参数未提供,则默认值为0

skewx():

指定对象X轴的(水平方向)扭曲

skewy():

指定对象Y轴的(垂直方向)扭曲

3D Transform Functions:

matrix3d():

以一个4x4矩阵的形式指定一个3D变换

translate3d():

指定对象的3D位移。第1个参数对应X轴,第2个参数对应Y轴,第3个参数对应Z轴,参数不允许省略

translatez():

指定对象Z轴的平移

rotate3d():

指定对象的3D旋转角度,其中前3个参数分别表示旋转的方向x,y,z,第4个参数表示旋转的角度,参数不允许省略

rotatex():

指定对象在x轴上的旋转角度

rotatey():

指定对象在y轴上的旋转角度

rotatez():

指定对象在z轴上的旋转角度

scale3d():

指定对象的3D缩放。第1个参数对应X轴,第2个参数对应Y轴,第3个参数对应Z轴,参数不允许省略

scalez():

指定对象的z轴缩放

perspective():

指定透视距离


1、2D转换

    使元素在x轴 和 y轴上所进行的转换效果可以称之为2D转换,包括:位移、缩放、旋转、倾斜


1-1、位移 translate()

    让元素产生一个位置的移动变化效果

函数:translate(一个值) -->只在x轴位移距离

          translate(值1,值2) --> 在x轴和y轴的位移距离

取值:数值 | 百分比,可以取负值

           x为正,则向右移动; x为负,则向左移动。

           y为正,则向下移动; y为负,则向上移动。


代码示例如下:

<!doctype html>
<html>
 <head>
  <meta charset="UTF-8">
  <title>位移</title>
  <style>
    div{
      width:100px;
      height:100px;
      
      position:absolute;
      top:0;
      left:0;
    }
    #d1{
      border:1px dotted #333;
    }
    #d2{
      border:1px solid #f00;
      background-color:#DDD;
      opacity:0.5;
      
      -WEBkit-transform:translate(50px,50px);
            -moz-transform:translate(50px,50px);
            -ms-transform:translate(50px,50px);
            transform:translate(50px,50px);
    }
  </style>
 </head>
 <body>
  <div id="d1"></div>
  <div id="d2"></div>
 </body>
</html>

wKioL1g1X2CRhOCeAAAE3Bu7CuI980.png


1-2、缩放  scale()

      改变元素的大小称之为 缩放

函数:scale(), scale(x), scale(x,y)

         注意:如果只给一个值,那么,第二个默认与第一个值相等

取值:默认值为1

          缩小:0到1之间的数值

          放大:大于1的数值


代码示例如下:

<!doctype html>
<html>
 <head>
  <meta charset="UTF-8">
  <title>位移</title>
  <style>
    div{
      width:200px;
      height:200px;
      
      position:absolute;
      top:300px;
      left:400px;
    }
    #d1{
      border:1px dotted #333;
    }
    #d2{
      border:1px solid #f00;
      background-color:#ddd;
      opacity:0.5;
      
      -webkit-transform:scaleX(1.5);
            -moz-transform:scaleX(1.5);
            -ms-transform:scaleX(1.5);
            transform:scaleX(1.5);
    }
  </style>
 </head>
 <body>
  <div id="d1">原始元素</div>
  <div id="d2">缩放元素</div>
 </body>
</html>

wKioL1g1YkiA_IELAAAPatS2CTE470.png

1-3、旋转   rotate( )

    使元素围绕着一个点(转换原点)实现角度的变化 称之为 旋转

函数:rotate( ndeg )

            注意:需先指定旋转原点 <transform-origin>

取值:n取值为正,按顺时针旋转; n取值为负,按逆时针旋转


不指定旋转原点,即按元素中心旋转:

<!doctype html>
<html>
 <head>
  <meta charset="UTF-8">
  <title>位移</title>
  <style>
    div{
      width:200px;
      height:200px;
      
      position:absolute;
      top:300px;
      left:400px;
    }
    #d1{
      border:1px dotted #333;
    }
    #d2{
      border:1px solid #f00;
      background-color:#ddd;
      opacity:0.5;
      
      -webkit-transform:rotate(45deg);
      -moz-transform:rotate(45deg);
      -ms-transform:rotate(45deg);
      transform:rotate(45deg);
    }
  </style>
 </head>
 <body>
  <div id="d1">原始元素</div>
  <div id="d2">旋转元素</div>
 </body>
</html>

wKioL1g2SwCDB7vcAAAYCW3gsbs133.png

也可改变默认转换原点:

<style>
  div{
    width:200px;
    height:200px;
    
    position:absolute;
    top:300px;
    left:400px;
  }
  #d1{
    border:1px dotted #333;
  }
  #d2{
    border:1px solid #f00;
    background-color:#ddd;
    opacity:0.5;
    
    -webkit-transform-origin:0px 0px;
    -moz-transform-origin:0px 0px;
    -ms-transform-origin:0px 0px;
    
    -webkit-transform:rotate(45deg);
    -moz-transform:rotate(45deg);
    -ms-transform:rotate(45deg);
    transform:rotate(45deg);
  }
</style>

wKioL1g2S8OgH_rGAAAXjZ_V1K4451.png

1-4、倾斜  skew( )

    能够改变元素的形状,以原点位置,让元素围绕着 x轴 或 y轴 按照一定的角度倾斜

函数: skew( x,y) , skew( x ) <==> skewX( ndeg ) , skewY( ndeg )

取值:角度


<!doctype html>
<html>
 <head>
  <meta charset="UTF-8">
  <title>位移</title>
  <style>
    div{
      width:200px;
      height:200px;
      
      position:absolute;
      top:300px;
      left:400px;
    }
    #d1{
      border:1px dotted #333;
    }
    #d2{
      border:1px solid #f00;
      background-color:#ddd;
      opacity:0.5;
      
      -webkit-transform:skew(30deg);
      -moz-transform:skew(30deg);
      -ms-transform:skew(30deg);
      transform:skew(30deg);

    }
  </style>
 </head>
 <body>
  <div id="d1">原始元素</div>
  <div id="d2">倾斜元素</div>
 </body>
</html>

wKioL1g2TrPTC9cxAAAf6uxLdSE439.png

2、3D转换

     在 x轴 和 y轴的基础上,增加对 z轴(空间轴)的转换效果


2-1、perspective 属性

    3D元素的透视效果,假定 人眼 到投射平面的距离

注意:(1)、使用 perspective属性,元素本身不会得到3D转换效果,其子元素才有3D转换效果

          (2)、浏览器兼容性,需带前缀 -webkit-perspective, -moz-perspective, 没有-ms-


2-2、3D转换--旋转

函数:rotateX( xdeg )   rotateY( ydeg )  rotateZ( zdeg )

          rotate3d(x,y,z,deg)   x,y,z 大于0,即表示该轴参与旋转

          rotate3d(1,1,1,45deg);  -->  rotateX(45deg)  rotateY(45deg)  rotateZ(45deg);

          rotate3d(1,0,0,45deg);  -->  rotateX(45deg);


代码示例如下:

<!doctype html>
<html>
 <head>
  <meta charset="UTF-8">
  <title>Document</title>
  <style>
    #parent{
      width:200px;
      height:200px;
      border:1px solid #ddd;
      margin:100px auto;
      
      -webkit-perspective:1200px;
      -moz-perspective:1200px;
      perspective:1200px;
    }
    #son{
      width:100px;
      height:100px;
      margin:50px auto;
      background-color:#e4393c;
      
      -webkit-transform:rotate3d(1,1,1,45deg);
      -moz-transform:rotate3d(1,1,1,45deg);
      -ms-transform:rotate3d(1,1,1,45deg);
      transform:rotate3d(1,1,1,45deg);
    }
  </style>
 </head>
 <body>
  <!-- 父元素设置 perspective , 子元素实现3d转换 -->
  <div id="parent">
    <div id="son">3d转换元素</div>
  </div>
 </body>
</html>

wKioL1g2U9WADpWpAAAXZGdH4AA923.png

2-3、3D转换--位移

      在2D基础上,增加了对 z轴上的位移距离

函数:

        translateZ( zdeg )

        取值为正:向着人眼方向移动,物体越大

        取值为负:远离人眼方向,物体越小

       

        translate3d(x,y,z):左右,上下,前后


2-4、transform-style 属性

作用:如何在3D空间中,呈现被嵌套的元素

          规范了当前元素的子元素,呈现什么样的位置显示

取值

        flat:子元素将不保留其3D位置,呈D位置显示

        preserve-3d:子元素将保留其3D位置



转换的原点  transform-origin

默认位置:原点是在元素的中心位置

取值:数值 | 百分比 | 关键字

两个值:表示x轴 和 y轴的位置

三个值:表示x轴,y轴,z轴


兼容性:

wKiom1g1WwTwFOVuAABAfqDgTYI449.png



--结束END--

本文标题: CSS3 转换(Transform)

本文链接: https://lsjlt.com/news/185016.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

猜你喜欢
  • CSS3 转换(Transform)
    转换 transform能够对元素进行移动、缩放、转动、拉长或拉伸在CSS中,允许元素实现 2D 和 3D的转换效果,主要包含 :旋转,缩放,移动,倾斜        2D :元素只能在X轴和Y轴平面上发生变化       3D :元素还可...
    99+
    2023-01-31
    Transform
  • CSS3转换(transform)基本用法介绍
    CSS3转换(transform)是一种用于改变元素的形状、大小、位置和旋转的技术。它可以通过应用一系列的转换函数来实现这些效果。下...
    99+
    2023-09-28
    CSS3
  • CSS3详解:transform
    近来,HTML5和CSS3的发展速度还是很可观的,国内外不乏一些大站,酷站都在使用最新的技术。面对新的技术,我们该如何正确的把握和使用到今后的项目实战中呢?针对这一问题,浩子决定剖析CSS3,一一像各位同学解答CSS3到底是个神马东西。就已...
    99+
    2023-01-31
    详解 transform
  • CSS3-3D转换
    CSS3-3D转换实例<!DOCTYPE html><html> <head> <meta charset="utf-8" /> <title></title> <...
    99+
    2023-01-31
  • CSS2D转换、3D转换的transform知识点有哪些
    本文小编为大家详细介绍“CSS2D转换、3D转换的transform知识点有哪些”,内容详细,步骤清晰,细节处理妥当,希望这篇“CSS2D转换、3D转换的transform知识点有哪些”文章能帮助大家解决疑...
    99+
    2024-04-02
  • CSS3的transform是什么
    这篇文章主要介绍“CSS3的transform是什么”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“CSS3的transform是什么”文章能帮助大家解决问题。 C...
    99+
    2024-04-02
  • css3如何使用transform属性来变换背景图
    这篇文章将为大家详细讲解有关css3如何使用transform属性来变换背景图,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。   使用 css3 transform 属...
    99+
    2024-04-02
  • CSS3中transform属性如何进行2D和3D变换
    这篇文章给大家分享的是有关CSS3中transform属性如何进行2D和3D变换的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。transform 2D之前有看到google将搜寻...
    99+
    2024-04-02
  • Css3中的transform怎么用
    这篇文章主要介绍了Css3中的transform怎么用的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇Css3中的transform怎么用文章都会有所收获,下面我们一起来看看吧。...
    99+
    2024-04-02
  • CSS3渐变及2D转换
    CSS3渐变及2D转换 持续更新哦… 1、css3渐变 概念: CSS3渐变(gradient)可以让你在两个或多个指定的颜色之间显示平 稳的过渡。以前,你必须使用图像来实现这些效果,现在通过使用 CSS3的渐变(gradients)即可实...
    99+
    2023-08-30
    css3 前端 css
  • css3过渡图画转换
    css3渐变线性渐变(Linear Gradient)- 向下/向上/向左/向右/对角方向径向渐变(Radial Gradient)- 由它们的中心定义repeating-linear-gradient() 函数用于重复线性渐变:线性渐变:...
    99+
    2023-01-31
    图画
  • css3属性transform-origin怎么用
    这篇文章主要为大家展示了“css3属性transform-origin怎么用”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“css3属性transform-ori...
    99+
    2024-04-02
  • CSS3中transform的matrix是什么
    这篇文章主要介绍了CSS3中transform的matrix是什么的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇CSS3中transform的matrix是什么文章都会有所收获...
    99+
    2024-04-02
  • css3的transform属性怎么用
    本篇内容主要讲解“css3的transform属性怎么用”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css3的transform属性怎么用”吧! ...
    99+
    2024-04-02
  • CSS3中transform属性怎么用
    这篇文章主要介绍了CSS3中transform属性怎么用,具有一定借鉴价值,感兴趣的朋友可以参考下,希望大家阅读完这篇文章之后大有收获,下面让小编带着大家一起了解一下。语法:none|<transfo...
    99+
    2024-04-02
  • Excel和CSV编程文件转换Easy Data Transform Mac
    Easy Data Transform for Mac是一款专为Mac用户所设计的Excel和CSV编程文件转换工具。EasyDataTransform Mac破解版无需编程即可轻松为您进行数据转换。除此之外EasyDataTransfor...
    99+
    2023-06-06
  • CSS3中如何实现transform功能
    小编给大家分享一下CSS3中如何实现transform功能,希望大家阅读完这篇文章之后都有所收获,下面让我们一起去探讨吧!CSS3中的变形功能:在CSS3中可以利用transform功能来实现文字或图像的旋...
    99+
    2024-04-02
  • css3中transform属性详细介绍
    本篇内容主要讲解“css3中transform属性详细介绍”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“css3中transform属性详细介绍”吧!CSS3变...
    99+
    2024-04-02
  • css3中transform属性如何实现
    这篇文章主要介绍css3中transform属性如何实现,文中介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们一定要看完!   1transform属性   在CSS3中,可以利用transform...
    99+
    2024-04-02
  • css3过渡与转换的方法
    这篇文章主要介绍“css3过渡与转换的方法”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“css3过渡与转换的方法”文章能帮助大家解决问题。一 css3过渡 转换cs...
    99+
    2024-04-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作