css3变形中几个重要点

html-css017

css3变形中几个重要点,第1张

1. perspective()函数与perspective属性

在3D变形中,除了perspective属性可以激活一个3D空间外,在3D变形的函数中的perspective()也可以激活3D空间。

不同的地方是:perspective用在舞台元素上(变形元素们共同的父元素);perspective()就是用在当前变形元素上,并且可以与其他的transform函数一起使用。例如,可以把:

.stage {    perspective: 600px}123

写成:

.stage .box {    transform: perspective(600px)}123

perspective 属性和perspective()函数功能一样,但其取值以及运用的对象有所不同。

perspective属性可以取值为none或长度值;而perspective()函数取值只能大于0,如果取值为0或比0小的值,将无法激活3D空间;

perspective属性用于变形对象父元素;而perspective()函数用于变形对象自身,并和transform其他函数一起使用。

2. perspective-origin

perspective-origin属性必须定义父元素上。通常perspective-origin属性本身不做任何事情,他必须被定义在设置perspective属性的元素上。换句话说,perspective-origin属性需要与perspective属性结合起来使用,以便将视点移至元素的中心以外的位置。

3. backface-visibility属性

backface-visibility属性决定元素旋转背面是否可见。对于未旋转的元素,该元素的正面面向观看者。当其Y轴旋转约180度时会导致元素的背面面对观众。

backface-visibility: visible | hidden1

visible: 默认值,反面可见

hidden:反面不可见

一个元素

我们没有使用transform-origin改变元素原点位置的情况下,CSS变形进行的旋转、移位、缩放等操作都是以元素自己中心(变形原点)位置进行变形的。但很多时候需要在不同的位置对元素进行变形操作,我们就可以使用transform-origin来对元素进行原点位置改变,使元素原点不在元素的中心位置,以达到需要的原点位置。如果我们把元素变换原点(transform-origin)设置0(x) 0(y),这个时候元素的变换原点转换到元素的左顶角处。改变transform-origin属性的X轴和Y轴的值就可以重置元素变形原点位置,其基本语法如下所示:`transform-origin:[<percentage>| <length>| left | center | right | top | bottom] | [<percentage>| <length>| left | center | right] | [[<percentage>| <length>| left | center | right] &&[<percentage>| <length>| top | center | bottom]] <length>?`transform-origin属性值可以是百分比、em、px等具体的值,也可以是top、right、bottom、left和center这样的关键词。2D的变形中的transform-origin属性可以是一个参数值,也可以是两个参数值。如果是两个参数值时,第一值设置水平方向X轴的位置,第二个值是用来设置垂直方向Y轴的位置。3D的变形中的transform-origin属性还包括了Z轴的第三个值。其各个值的取值简单说明如下: x-offset:用来设置transform-origin水平方向X轴的偏移量,可以使用<length>和<percentage>值,同时也可以是正值(从中心点沿水平方向X轴向右偏移量),也可以是负值(从中心点沿水平方向X轴向左偏移量)。 offset-keyword:是top、right、bottom、left或center中的一个关键词,可以用来设置transform-origin的偏移量。 y-offset:用来设置transform-origin属性在垂直方向Y轴的偏移量,可以使用<length>和<percentage>值,同时可以是正值(从中心点沿垂直方向Y轴向下的偏移量),也可以是负值(从中心点沿垂直方向Y轴向上的偏移量)。 x-offset-keyword:是left、right或center中的一个关键词,可以用来设置transform-origin属性值在水平X轴的偏移量。 y-offset-keyword:是top、bottom或center中的一个关键词,可以用来设置transform-origin属性值在垂直方向Y轴的偏移量。 z-offset:用来设置3D变形中transform-origin远离用户眼睛视点的距离,默认值z=0,其取值可以<length>,不过<percentage>在这里将无效。

transform-origin:50% 50%        设置旋转中心为元素中心。

transform-origin:0% 0%        设置旋转中心为元素左上角。

transform-origin:100% 100%        设置旋转中心为元素右下角。

明白了吧