cari
Rumahhujung hadapan webtutorial csscss3动画中圆形运动轨迹的实现

css3中通过@keyframes定义动画,animation设置动画属性,从而实现动画效果;

在animation属性当中,可以规定动画的名称、整个动画的运行时间、运动的速度曲线以及其延迟时间、播放次数等。

animation

animation作为一个复合属性,包括了以下动画属性。

  • animation-name -------------------------------------规定动画名称

  • animation-duration ---------------------------------规定动画完成一次的时间

  • animation-timing-function  ----------------------规定动画的运动速度曲线

  • animation-delay  ------------------------------------规定动画的延迟时间

  • animation-iteration-count  -----------------------规定动画的播放次数

  • animation-direction   ------------------------------规定动画下一周期是否逆向开始

  • animation-fill-mode  -------------------------------规定动画时间之外的状态

  • animation-play-state  ------------------------------规定动画的运行和暂停

animation-timing-function

规定动画的速度曲线。默认是 "ease"。常用的运动速度曲线还有以下几种:

  • linear:线性过渡。

  • ease-in:由慢到快。

  • ease-out:由快到慢。

  • ease-in-out:由慢到快再到慢。

也可以直接使用贝塞尔曲线规定运行的速度曲线,贝塞尔曲线的4个数值需在[0, 1]区间内。

animation-direction

规定动画是否在下一周期逆向播放。默认是 "normal"

  • reverse:反方向运动

  • alternate:先正常方向再反方向运动,持续交替

  • alternate-reverse:先反方向再正常方向运动,持续交替

animation-fill-mode

规定对象动画时间之外的状态。常用值如下:

  • none:默认值

  • forwards:设置对象状态为动画结束时的状态

  • backwards:设置对象状态为动画开始时的状态

圆形运动轨迹

实现代码如下:

<!DOCTYPE html>
    <html lang="en">
    <head>
    <meta charset="UTF-8">
    <title>沿圆形轨迹运动</title>
    <style type="text/css">
        *{
            margin: 0;
            padding: 0;
        }
        html,body{
            height: 100%;
        }
        #trajectory {
            width: 300px;
            height: 300px;
            border: 4px solid #949494;
            border-radius: 50%;
            position: relative;
            left: calc(50% - 153px);
            top:calc(50% - 153px);
        }
        @keyframes moveX{
            0% {left: -22px;}
            100% {left: 282px;}
        }
        @keyframes moveY{
            0% {top: -22px;}
            100% {top: 282px;}
        }
        #move {
            width: 40px;
            height: 40px;
            font-size: 12px;
            background-color: #32c33a;
            border-radius: 50%;
            position: absolute;
            left:-22px;
            top:-22px;
            animation: moveX 4s cubic-bezier(0.36,0,0.64,1) -2s infinite alternate, moveY 4s cubic-bezier(0.36,0,0.64,1) 0s infinite alternate;
        }
    </style></head><body>
    <p id="trajectory">
        <p id="move">Immortal brother</p>
    </p></body></html>

 以上代码的注意点如下:

  • 对body高度100%的设置原因在于html5环境下body的默认高度为0

  • calc在使用过程中,值与值之间的“-”和“+”两端的空格必不可少

  • 动画当中的left和top值为物体运动的起始位置和结束位置,要注意border值

  • 动画一次执行的运动轨迹仅为一半

  • 速度曲线:cubic-bezier(0.36,0,0.64,1);

  • 两个方向的延迟时间的设置 X:-2s;Y : 0s

  • 先正方向再反方向持续交替运行 :alternate

Atas ialah kandungan terperinci css3动画中圆形运动轨迹的实现. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Berita Platform Mingguan: Aplikasi Web di Kedai Galaxy, Cerita Tappable, CSS SubgridBerita Platform Mingguan: Aplikasi Web di Kedai Galaxy, Cerita Tappable, CSS SubgridApr 14, 2025 am 11:20 AM

Dalam roundup minggu ini: Firefox Gains Locksmith seperti kuasa, Samsung ' s Galaxy Store mula menyokong aplikasi web progresif, subgrid CSS adalah penghantaran di Firefox

Kekuatan (dan keseronokan) skop dengan sifat tersuai CSSKekuatan (dan keseronokan) skop dengan sifat tersuai CSSApr 14, 2025 am 11:11 AM

Anda mungkin sudah sekurang -kurangnya sedikit biasa dengan pembolehubah CSS. Jika tidak, inilah gambaran keseluruhan dua saat: mereka benar-benar dipanggil sifat tersuai, anda menetapkan

Kami adalah pengaturcaraKami adalah pengaturcaraApr 14, 2025 am 11:04 AM

Laman web bangunan adalah pengaturcaraan. Menulis HTML dan CSS adalah pengaturcaraan. Saya seorang pengaturcara, dan jika anda ' di sini, membaca css-tricks, kemungkinan anda '

Bagaimana anda mengeluarkan CSS yang tidak digunakan dari laman web?Bagaimana anda mengeluarkan CSS yang tidak digunakan dari laman web?Apr 14, 2025 am 10:59 AM

Di sini ' s Apa yang saya suka untuk mengetahui pendahuluan: Ini adalah masalah yang sukar. Sekiranya anda mendarat di sini kerana anda berharap dapat menunjuk pada alat yang boleh anda jalankan

Pengenalan kepada API Web Picture-in-PicturePengenalan kepada API Web Picture-in-PictureApr 14, 2025 am 10:57 AM

Picture-in-Picture membuat penampilan pertamanya di web di pelayar safari dengan pembebasan macos Sierra pada tahun 2016. Ia memungkinkan pengguna untuk muncul

Cara untuk mengatur dan menyediakan imej untuk kesan kabur menggunakan GatsbyCara untuk mengatur dan menyediakan imej untuk kesan kabur menggunakan GatsbyApr 14, 2025 am 10:56 AM

Gatsby melakukan pemprosesan kerja yang hebat dan mengendalikan imej. Contohnya, ia membantu anda menjimatkan masa dengan pengoptimuman imej kerana anda tidak perlu secara manual

Oh hei, peratusan padding didasarkan pada elemen induk ' s lebarOh hei, peratusan padding didasarkan pada elemen induk ' s lebarApr 14, 2025 am 10:55 AM

Saya belajar sesuatu mengenai padding berasaskan peratusan hari ini bahawa saya benar-benar salah di kepala saya! Saya selalu menganggap bahawa padding peratusan berdasarkan

See all articles

Alat AI Hot

Undresser.AI Undress

Undresser.AI Undress

Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover

AI Clothes Remover

Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool

Undress AI Tool

Gambar buka pakaian secara percuma

Clothoff.io

Clothoff.io

Penyingkiran pakaian AI

AI Hentai Generator

AI Hentai Generator

Menjana ai hentai secara percuma.

Artikel Panas

R.E.P.O. Kristal tenaga dijelaskan dan apa yang mereka lakukan (kristal kuning)
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Tetapan grafik terbaik
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Cara Memperbaiki Audio Jika anda tidak dapat mendengar sesiapa
3 minggu yang laluBy尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Cara Membuka Segala -galanya Di Myrise
1 bulan yang laluBy尊渡假赌尊渡假赌尊渡假赌

Alat panas

ZendStudio 13.5.1 Mac

ZendStudio 13.5.1 Mac

Persekitaran pembangunan bersepadu PHP yang berkuasa

SublimeText3 Linux versi baharu

SublimeText3 Linux versi baharu

SublimeText3 Linux versi terkini

VSCode Windows 64-bit Muat Turun

VSCode Windows 64-bit Muat Turun

Editor IDE percuma dan berkuasa yang dilancarkan oleh Microsoft

SublimeText3 versi Mac

SublimeText3 versi Mac

Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Dreamweaver CS6

Dreamweaver CS6

Alat pembangunan web visual