CSS 过渡与动画 沿环形路径平移的动画

发布于 2024-11-17 12:19:25 字数 1959 浏览 5 评论 0

沿环形路径平移的动画

效果

方案一

需要 2 个元素

<div class="path">
    <div class="avatar">
        <img src="http://lea.verou.me/book/adamcatlace.jpg" />
    </div>
</div>
/**
 * Animation along a circular path - Solution 1
 */

@keyframes spin {
    to { transform: rotate(1turn); }
}

.avatar {
    animation: spin 3s infinite linear;
    transform-origin: 50% 150px;
}

.avatar > img {
    animation: inherit;
    animation-direction: reverse;
}

/* Anything below this is just styling */

.avatar {
    width: 50px;
    margin: 0 auto;
    border-radius: 50%;
    overflow: hidden;
}

.avatar > img {
    display: block;
    width: inherit;
}

.path {
    width: 300px;
    height: 300px;
    padding: 20px;
    border-radius: 50%;
    background: #fb3;
}

方案二

单个元素

<div class="path">
    <img src="http://lea.verou.me/book/adamcatlace.jpg" class="avatar" />
</div>
/**
 * Animation along a circular path - Solution 2
 */

@keyframes spin {
    from {
        transform: rotate(0turn)
                   translateY(-150px) translateY(50%)
                   rotate(1turn)
    }
    to {
        transform: rotate(1turn)
                   translateY(-150px) translateY(50%)
                   rotate(0turn);
    }
}


.avatar {
    animation: spin 3s infinite linear;
}

/* Anything below this is just styling */

.avatar {
    display: block;
    width: 50px;
    margin: calc(50% - 25px) auto 0;
    border-radius: 50%;
    overflow: hidden;
}

.path {
    width: 300px; height: 300px;
    padding: 20px;
    margin: 100px auto;
    border-radius: 50%;
    background: #fb3;
}

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。
列表为空,暂无数据

关于作者

挽清梦

暂无简介

0 文章
0 评论
22 人气
更多

推荐作者

qq_7J1imQ

文章 0 评论 0

《一串符号》

文章 0 评论 0

hls.

文章 0 评论 0

雅心素梦

文章 0 评论 0

塔塔猫

文章 0 评论 0

微信用户

文章 0 评论 0

    我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
    原文