变形translate(),transform-origin(),动画——transition-property()

(一)translate()函数可以将元素向指定的方向移动,类似于position中的relative。或可以简单的理解为,使用translate()函数,可以把元素从原来的位置移动,而不影响在X、Y轴上的任何Web组件。

translate我们分为三种情况:

1.translate(x,y)水平方向和垂直方向同时移动(也就是x轴和Y轴同时移动)

2.translateX(x)仅水平方向移动(X轴移动)

3.translateY(y)仅垂直方向(Y轴移动)

实例:

让不知道宽度和高度的元素实现水平、垂直居中。

.wrapper {

padding: 20px;

background:orange;

color:#fff;

position:absolute;

top:50%;

left:50%;

border-radius: 5px;

-webkit-transform:translate(-50%,-50%);

-moz-transform:translate(-50%,-50%);

transform:translate(-50%,-50%);

}

解析:

1. top:50%,left:50%,是将色块的左上角定位在了屏幕的中央,但是,整体并不在中央;

2. translate的百分比是根据自身的宽度和高度来定的,translate(-50%,-50%) 配合 top:50%,left:50% 实现了居中

(二)矩阵matrix()

matrix()是一个含六个值的(a,b,c,d,e,f)变换矩阵,用来指定一个2D变换,相当于直接应用一个[a b c d e f]变换矩阵。就是基于水平方向(X)轴和垂直方向(Y轴)重新定位元素,此属性值使用涉及到数学中的矩阵。

也可以这样理解:

a为元素的水平伸缩量,1为原始大小;

b为纵向扭曲,0为不变;

c为横向扭曲,0不变;

d为垂直伸缩量,1为原始大小;

e为水平偏移量,0是初始位置;

f为垂直偏移量,0是初始位置

(二)原点transform-origin

任何一个元素都有一个中心点,默认情况下,其中心点是居于元素X轴和Y轴的50%处。如下图所示:

在没有重置transform-origin改变元素原点位置的情况下,CSS变形进行的旋转,位移,缩放,扭曲等操作都是以元素自己中心位置进行变形。但很多时候,我们可以通过transform-origin来对元素进行原点位置改变,使元素原点不在元素的中心位置,以达到需要的原点位置。

transform-origin取值和元素设置背景中的background-position取值类似,如下表所示:代表改变后基点的位置,比如在左下角,右下角,左上角,右上角

关键词"="表示这几种表达方式相同

其中 left,center right是水平方向取值,对应的百分值为left=0%;center=50%;right=100%

而

top center bottom是垂直方向的取值,其中top=0%;center=50%;bottom=100%;

如果只取一个值,表示垂直方向值不变。

注:

transform-origin并不是transform中的属性值,他具有自己的语法。

但是他要结合transform才能起作用。

(三)过渡属性transition-property

早期在Web中要实现动画效果,都是依赖于JavaScript或Flash来完成。但在CSS3中新增加了一个新的模块transition,它可以通过一些简单的CSS3事件来触发元素的外观变化,让效果显得更加细腻。简单点来说,就是通过鼠标的单击,获得焦点,被点击或对元素任何改变中触发,并平滑地以动画效果改变CSS的属性值。

先来看transition-property属性

transition-property用来指定过渡动画的CSS属性名称,而这个过渡属性只有具备一个中点值的属性(需要产生动画的属性)才能具备过渡效果,其对应具有过渡的CSS属性主要有:

特别注意:当“transition-property”属性设置为all时,表示的是所有中点值的属性。

最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 关于css3变形 CSS3变形是一些效果的集合,比如平移、旋转、缩放和倾斜效果,每个效果都被称作为变形函数(Tra...
    hopevow阅读 6,626评论 2赞 13
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    love2013阅读 2,504评论 0赞 11
  • 选择qi:是表达式 标签选择器 类选择器 属性选择器 继承属性: color,font,text-align,li...
    wzhiq896阅读 2,217评论 0赞 2
  • 看了很多视频、文章,最后却通通忘记了,别人的知识依旧是别人的,自己却什么都没获得。此系列文章旨在加深自己的印象,因...
    DCbryant阅读 2,052评论 0赞 4
  • 变形--旋转 rotate() 旋转rotate()函数通过指定的角度参数使元素相对原点进行旋转。它主要在二维空间...
    阿振_sc阅读 1,019评论 1赞 5

友情链接更多精彩内容