Table of Contents
Transition, transform and animation introduction
transition
transform
animation
Home Web Front-end HTML Tutorial Introduction to CSS3 Transition, transform and animation_html/css_WEB-ITnose

Introduction to CSS3 Transition, transform and animation_html/css_WEB-ITnose

Jun 24, 2016 am 11:43 AM

CSS3 provides transition, transform and animation to achieve some style transformations on the page. This article will briefly introduce these properties, and then compare the performance of CSS3 animation and JS animation. better.

Transition, transform and animation introduction

transition

transition allows CSS attribute values ​​to transition smoothly within a certain time interval. The syntax is as follows:

transition : transition-property transition-duration transition-timing-function transition-delay [, ...]
Copy after login
  • transition-property
    is used to specify the property to execute the transition effect, which can be none, all or a specific property.
  • transition-duration
    The duration of animation execution, in s (seconds) or ms (milliseconds).
  • transition-timing-function
    Transformation rate effect, optional values ​​are ease|linear|ease-in|ease-out|ease-in-out|cubic-bezier (custom time curve).
  • transition-delay
    is used to specify the time when the animation starts to execute. The value is the same as transition-duration, but it can be a negative number.
  • DEMO: http://codepen.io/CodingMonkeyzh/pen/ZGBRVe

    transform

    transform is divided into 2D and 3D. Here we only introduce the more commonly used 2D transform. , which mainly includes the following transformations: rotate rotate, distort skew, scale and translate, and matrix deformation matrix. The syntax is as follows:

    transform: rotate | scale | skew | translate |matrix;
    Copy after login
    • rotate rotation
      The unit of rotate is deg degree, positive number means clockwise rotation, negative number means counterclockwise rotation.
      DEMO: http://codepen.io/CodingMonkeyzh/pen/XbNYOa
    • scale scaling
      The value range of scale is 0~n. When it is less than 1, it means reducing, otherwise it means enlarging. For example, scale(0.5, 2) means that the horizontal direction is reduced by 1 times and the vertical direction is enlarged by 1 times. In addition, one direction can also be set through scaleX or scaleY.
      DEMO: http://codepen.io/CodingMonkeyzh/pen/doOKrg
    • skew distortion
      The unit of skew is the same as rotate, which is deg degrees. For example, skew(30deg, 10deg) means that the horizontal direction is tilted 30 degrees and the vertical direction is tilted 10 degrees.
      DEMO: http://codepen.io/CodingMonkeyzh/pen/KpNeYg
    • translate Offset
      Offset also includes horizontal offset and vertical offset. translate(x,y) moves horizontally and vertically at the same time (that is, the X-axis and Y-axis move simultaneously); translateX(x) only moves horizontally (X-axis moves); translateY(Y) only moves vertically (Y-axis move).
      DEMO: http://codepen.io/CodingMonkeyzh/pen/waoXbB

    animation

    Animation in CSS3 is controlled through a thing called Keyframes. , its name starts with "@keyframes", followed by the "name of the animation" plus a pair of curly brackets "{}". In the brackets are some style rules for different time periods, a bit like how we write CSS styles. Same. For a style rule in "@keyframes" that is composed of multiple percentages, such as between "0%" and "100%", the syntax is as follows:

    @keyframes IDENT {  from {    Properties: Properties value;  }  Percentage {    Properties: Properties value;  }  to {    Properties: Properties value;  }}或者全部写成百分比的形式: @keyframes IDENT {  0% {    Properties: Properties value;  }  Percentage {    Properties: Properties value;  }  100% {    Properties: Properties value;  }}
    Copy after login

    animation has its own relationship with transition. Corresponding attributes, then there are mainly the following in animation: animation-name; animation-duration; animation-timing-function; animation-delay; animation-iteration-count; animation-direction; animation-play-state. Some of the attributes are explained below:

    • animation-name keyframe name
      is used to define the name of an animation, which is the name of the animation created by the previous keyframes. The default value is none, when the value is none, there will be no animation effect. If we want to attach several animations to an element at the same time, just separate them with commas.
    • animation-iteration-count animation cycle count
      The default is 1. If you want to loop infinitely, just set it to infinite.
    • animation-direction animation playback direction
      It has only two values. The default value is normal. If set to normal, each cycle of the animation will play forward; the other value is alternate. Its function is to play the animation forward in the even-numbered times and in the reverse direction in the odd-numbered times.
    • animation-play-state play state
      It mainly has two values, running and paused, of which running is the default value. You can stop the currently playing animation through paused, and you can also replay the paused animation through running. This attribute is not commonly used.

    DEMO 1: http://codepen.io/CodingMonkeyzh/pen/mJOKZY

    DEMO 2: http://codepen.io/CodingMonkeyzh/pen/EjNpaE

    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

    AI Hentai Generator

    AI Hentai Generator

    Generate AI Hentai for free.

    Hot Article

    R.E.P.O. Energy Crystals Explained and What They Do (Yellow Crystal)
    3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. Best Graphic Settings
    3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
    R.E.P.O. How to Fix Audio if You Can't Hear Anyone
    3 weeks ago By 尊渡假赌尊渡假赌尊渡假赌
    WWE 2K25: How To Unlock Everything In MyRise
    4 weeks ago By 尊渡假赌尊渡假赌尊渡假赌

    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)

    What is the purpose of the <progress> element? What is the purpose of the <progress> element? Mar 21, 2025 pm 12:34 PM

    The article discusses the HTML &lt;progress&gt; element, its purpose, styling, and differences from the &lt;meter&gt; element. The main focus is on using &lt;progress&gt; for task completion and &lt;meter&gt; for stati

    What is the purpose of the <datalist> element? What is the purpose of the <datalist> element? Mar 21, 2025 pm 12:33 PM

    The article discusses the HTML &lt;datalist&gt; element, which enhances forms by providing autocomplete suggestions, improving user experience and reducing errors.Character count: 159

    What are the best practices for cross-browser compatibility in HTML5? What are the best practices for cross-browser compatibility in HTML5? Mar 17, 2025 pm 12:20 PM

    Article discusses best practices for ensuring HTML5 cross-browser compatibility, focusing on feature detection, progressive enhancement, and testing methods.

    What is the purpose of the <meter> element? What is the purpose of the <meter> element? Mar 21, 2025 pm 12:35 PM

    The article discusses the HTML &lt;meter&gt; element, used for displaying scalar or fractional values within a range, and its common applications in web development. It differentiates &lt;meter&gt; from &lt;progress&gt; and ex

    How do I use HTML5 form validation attributes to validate user input? How do I use HTML5 form validation attributes to validate user input? Mar 17, 2025 pm 12:27 PM

    The article discusses using HTML5 form validation attributes like required, pattern, min, max, and length limits to validate user input directly in the browser.

    What is the viewport meta tag? Why is it important for responsive design? What is the viewport meta tag? Why is it important for responsive design? Mar 20, 2025 pm 05:56 PM

    The article discusses the viewport meta tag, essential for responsive web design on mobile devices. It explains how proper use ensures optimal content scaling and user interaction, while misuse can lead to design and accessibility issues.

    What is the purpose of the <iframe> tag? What are the security considerations when using it? What is the purpose of the <iframe> tag? What are the security considerations when using it? Mar 20, 2025 pm 06:05 PM

    The article discusses the &lt;iframe&gt; tag's purpose in embedding external content into webpages, its common uses, security risks, and alternatives like object tags and APIs.

    Gitee Pages static website deployment failed: How to troubleshoot and resolve single file 404 errors? Gitee Pages static website deployment failed: How to troubleshoot and resolve single file 404 errors? Apr 04, 2025 pm 11:54 PM

    GiteePages static website deployment failed: 404 error troubleshooting and resolution when using Gitee...

    See all articles