Table of Contents
1 transform attribute" >1 transform attribute
2 Rotate " >2 Rotate
3 Zoom " >3 Zoom
4 Tilt " >4 Tilt
5 Move" >5 Move
6 Use multiple deformation methods for an element" >6 Use multiple deformation methods for an element
7 Specify the base point of deformation" >7 Specify the base point of deformation
transform-origin attribute
8 3D deformation function" >8 3D deformation function
9 Transformation Matrix" >9 Transformation Matrix
Home Web Front-end CSS Tutorial 4 functions implemented by the transform attribute in CSS3 (rotation, scaling, tilting, and moving)

4 functions implemented by the transform attribute in CSS3 (rotation, scaling, tilting, and moving)

Aug 24, 2018 am 10:13 AM
transform attribute

What this article brings to you is about the four functions (rotation, scaling, tilt, and movement) implemented by the transform attribute in CSS3. It has certain reference value. Friends in need can refer to it. Hope it helps.

1 transform attribute

In CSS3, you can use the transform function to achieve four types of deformation: rotation, scaling, tilting, and movement of text or images. deal with.

(1) Browser support

So far: Safari3.1 or above, Chrome8 or above, Firefox4 or above, Opera10 or above browsers support this attribute.

2 Rotate

Use the rotate method and add the angle value to the parameter. The angle value is followed by the "deg" text indicating the angle unit. Rotate The direction is clockwise.

transform:rotate(45deg);
Copy after login

3 Zoom

Use the scale method to implement scaling of text or images, and specify the scaling ratio in the parameters.

transform:scale(0.5);//缩小一半
Copy after login

(1) You can specify the horizontal magnification and vertical magnification of the element respectively

transform:scale(0.5,2);//水平方向缩小一半,垂直方向放大一倍。
Copy after login

4 Tilt

Use the skew method To implement tilt processing of text or images, specify the tilt angle in the horizontal direction and the tilt angle in the vertical direction in the parameters.

transform:skew(30deg,30deg);//水平方向上倾斜30度,垂直方向上倾斜30度。
Copy after login

(1) Only use one parameter and omit the other parameter

In this case, it is regarded as tilting only in the horizontal direction and not in the vertical direction.

transform:skew(30deg);
Copy after login

5 Move

Use the translate method to move text or images, and specify the moving distance in the horizontal direction and the moving distance in the vertical direction in the parameters.

transform:translate(50px,50px);// 水平方向上移动50px,垂直方向上移动50px
Copy after login

(1) Only use one parameter and omit the other parameter

In this case, it is regarded as moving only in the horizontal direction and not in the vertical direction.

transform:translate(50px);
Copy after login

6 Use multiple deformation methods for an element

transform:translate(150px,200px) rotate(45deg) scale(1.5);
Copy after login

7 Specify the base point of deformation

When using When the transform method deforms text or images, it uses the center point of the element as the base point for deformation.

transform-origin attribute

Use this attribute to change the base point of deformation.

transform:rotate(45deg);
transform-origin:left bottom;//把基准点修改为元素的左下角
Copy after login

(1) Specify the attribute value

The position of the reference point in the horizontal direction of the element: left, center, right

The position of the reference point in the vertical direction of the element: top, center, bottom

8 3D deformation function

(1) Rotation

Use rotateX method, rotateY method, rotateZ method respectively to surround the element To rotate the X-axis, Y-axis, and Z-axis, add the angle value to the parameters. The angle value is followed by the deg text indicating the angle unit. The rotation direction is clockwise.

transform:rotateX(45deg);
transform:rotateY(45deg);
transform:rotateZ(45deg);
transform:rotateX(45deg) rotateY(45deg) rotateZ(45deg);
transform:scale(0.5) rotateY(45deg) rotateZ(45deg);
Copy after login

(2) Scaling

Use the scaleX method, scaleY method, and scaleZ method respectively to scale the element according to the X-axis, Y-axis, and Z-axis, and specify the scaling ratio in the parameters.

transform:scaleX(0.5);
transform:scaleY(1);
transform:scaleZ(2);
transform:scaleX(0.5)scaleY(1);
transform:scale(0.5) rotateY(45deg);
Copy after login

(3) Tilt

Use the skewX method and skewY method respectively to tilt the element clockwise on the X-axis and Y-axis (no skewZ method), and specify the tilt in the parameters Angle

transform:skewX(45deg);
transform:skewY(45deg);
Copy after login

(4) Movement

Use the translateX method, translateY method, and translateZ method respectively to move the element in the X-axis, Y-axis, and Z-axis directions, and add movement in the parameters distance.

transform:translateX(50px);
transform:translateY(50px);
transform:translateZ(50px);
Copy after login

9 Transformation Matrix

There is a corresponding matrix behind each transformation method.

(1) Calculate 2D deformation (3 ,b,c,d,e,f), a~f all represent a number, used to decide how to perform deformation processing.

(2) Translation 2D matrix\begin{bmatrix} a&c&e \ b & d & f\ 0 & 0 &1 \end{bmatrix}

//效果一致:右移150px,下移150px
transform:matrix(1,0,0,1,150,150);
transform:translate(150px,150px);
Copy after login

(3) Calculate 3D deformation

4X4 matrix used for 3D scaling deformation\begin{bmatrix} 1 & 0 & tx\ 0& 1& ty \ 0& 0& 1 \end{bmatrix}

\begin{bmatrix} sx & 0 & 0&0 \\ 0& sy & 0&0 \\ 0& 0& sz & 0\\ 0& 0& 0&1 \end{bmatrix}

transform:matrix3d(sx,0,0,0,0,sy,0,0,0,0,sz,0,0,0,0,1);

//效果一致:X轴方向上缩小五分之一,Y轴方向上缩小一半。
transform:scale3d(0.8,0.5,1);
transform:matrix3d(0.8,0,0,0,0,0.5,0,0,0,0,1,0,0,0,0,1);
Copy after login

(4)可通过矩阵执行多重变形处理

将需要的变形矩阵相乘得到一个新的变形矩阵可实现该处理。

相关推荐:

CSS3的transform属性_html/css_WEB-ITnose

CSS3的属性transition、animation、transform

The above is the detailed content of 4 functions implemented by the transform attribute in CSS3 (rotation, scaling, tilting, and moving). For more information, please follow other related articles on the PHP Chinese website!

Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn

Hot AI Tools

Undresser.AI Undress

Undresser.AI Undress

AI-powered app for creating realistic nude photos

AI Clothes Remover

AI Clothes Remover

Online AI tool for removing clothes from photos.

Undress AI Tool

Undress AI Tool

Undress images for free

Clothoff.io

Clothoff.io

AI clothes remover

Video Face Swap

Video Face Swap

Swap faces in any video effortlessly with our completely free AI face swap tool!

Hot Tools

Notepad++7.3.1

Notepad++7.3.1

Easy-to-use and free code editor

SublimeText3 Chinese version

SublimeText3 Chinese version

Chinese version, very easy to use

Zend Studio 13.0.1

Zend Studio 13.0.1

Powerful PHP integrated development environment

Dreamweaver CS6

Dreamweaver CS6

Visual web development tools

SublimeText3 Mac version

SublimeText3 Mac version

God-level code editing software (SublimeText3)

Building an Ethereum app using Redwood.js and Fauna Building an Ethereum app using Redwood.js and Fauna Mar 28, 2025 am 09:18 AM

With the recent climb of Bitcoin’s price over 20k $USD, and to it recently breaking 30k, I thought it’s worth taking a deep dive back into creating Ethereum

Vue 3 Vue 3 Apr 02, 2025 pm 06:32 PM

It's out! Congrats to the Vue team for getting it done, I know it was a massive effort and a long time coming. All new docs, as well.

Can you get valid CSS property values from the browser? Can you get valid CSS property values from the browser? Apr 02, 2025 pm 06:17 PM

I had someone write in with this very legit question. Lea just blogged about how you can get valid CSS properties themselves from the browser. That's like this.

A bit on ci/cd A bit on ci/cd Apr 02, 2025 pm 06:21 PM

I'd say "website" fits better than "mobile app" but I like this framing from Max Lynch:

Stacked Cards with Sticky Positioning and a Dash of Sass Stacked Cards with Sticky Positioning and a Dash of Sass Apr 03, 2025 am 10:30 AM

The other day, I spotted this particularly lovely bit from Corey Ginnivan’s website where a collection of cards stack on top of one another as you scroll.

Using Markdown and Localization in the WordPress Block Editor Using Markdown and Localization in the WordPress Block Editor Apr 02, 2025 am 04:27 AM

If we need to show documentation to the user directly in the WordPress editor, what is the best way to do it?

Comparing Browsers for Responsive Design Comparing Browsers for Responsive Design Apr 02, 2025 pm 06:25 PM

There are a number of these desktop apps where the goal is showing your site at different dimensions all at the same time. So you can, for example, be writing

Let's use (X, X, X, X) for talking about specificity Let's use (X, X, X, X) for talking about specificity Mar 24, 2025 am 10:37 AM

I was just chatting with Eric Meyer the other day and I remembered an Eric Meyer story from my formative years. I wrote a blog post about CSS specificity, and

See all articles