使用纯 CSS 创作一个渐变色动画边框

所属分类: 网页制作 / CSS 阅读数: 291
收藏 0 赞 0 分享

效果预览

在线演示

按下右侧的“点击预览”按钮可以在当前页面预览,点击链接可以全屏预览。

https://codepen.io/comehope/pen/odpRKX

可交互视频教程

此视频是可以交互的,你可以随时暂停视频,编辑视频中的代码。

请用 chrome, safari, edge 打开观看。

https://scrimba.com/c/cmQV7Hd

源代码下载

本地下载

请从 github 下载。

https://github.com/comehope/front-end-daily-challenges/tree/master/016-colorful-gradient-animated-border

代码解读

定义 dom,一个容器中包含一些文字:

<div class="box">
    you are my<br>
    FAVORITE
</div>

居中显示:

html,
body,
.box {
    height: 100%;
    display: flex;
    align-items: center;
    justify-content: center;
}

设置页面背景色:

body {
    background: #222;
}

设置容器和文字样式:

.box {
    color: white;
    font-size: 2.5em;
    width: 10em;
    height: 5em;
    background: #111;
    font-family: sans-serif;
    line-height: 1.5em;
    text-align: center;
    border-radius: 0.2em;
}

用伪元素增加一个背板:

.box {
    position: relative;
}

.box::after {
    content: '';
    position: absolute;
    width: 102%;
    height: 104%;
    background-color: orange;
    z-index: -1;
    border-radius: 0.2em;
}

把背板设置为渐变色的:

.box::after {
    /*background-color: orange;*/
    background-image: linear-gradient(60deg, aquamarine, cornflowerblue, goldenrod, hotpink, salmon, lightgreen, sandybrown, violet);
}

为背板设置动画效果:

.box::after {
    background-size: 300%, 300%;
    animation: animate_bg 5s ease infinite alternate;
}

@keyframes animate_bg {
    0% {
        background-position: 0%, 50%;
    }

    50% {
        background-position: 100%, 50%;
    }

    100% {
        background-position: 0%, 50%;
    }
}

最后,再为文字增加变色效果:

.box {
    animation: animate_text 2s linear infinite alternate;
}

@keyframes animate_text {
    from {
        color: lime;
    }

    to {
        color: yellow;
    }
}

大功告成!

知识点
 

•z-index https://developer.mozilla.org/en-US/docs/Web/CSS/z-index
•background-image https://developer.mozilla.org/en-US/docs/Web/CSS/background-image
•background-size https://developer.mozilla.org/en-US/docs/Web/CSS/background-size
•background-position https://developer.mozilla.org/en-US/docs/Web/CSS/background-position 
 

以上所述是小编给大家介绍的使用纯 CSS 创作一个渐变色动画边框,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对脚本之家网站的支持!

更多精彩内容其他人还在看

CSS圆角边框制作指南与实例

这篇文章主要介绍了CSS圆角边框制作指南与实例,这里突出讲解了以纯代码实现的小圆角 来消灭锯齿的方法,需要的朋友可以参考下
收藏 0 赞 0 分享

css实现移动端图片文字水平居中

这篇文章主要为大家详细介绍了css实现移动端图片文字水平居中的方法,如何实现图片以及文字的整体水平居中,本文为大家提供两种解决办法,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

Div+CSS对HTML的table表格定位用法实例

这篇文章主要介绍了Div+CSS对HTML的table表格定位用法实例,文中讲到了CSS的定位差异问题需要的朋友可以参考下
收藏 0 赞 0 分享

使用div+CSS将页脚始终控制在页面最下方的方法

这篇文章主要介绍了使用div+CSS将页脚始终控制在页面最下方的方法,文中介绍了设置container以及使用绝对定位两种方法来解决,需要的朋友可以参考下
收藏 0 赞 0 分享

你值得拥有的CSS下拉菜单效果

这篇文章主要介绍了你值得拥有的多种CSS下拉菜单效果,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

CSS利用伪元素实现导航栏斜线分隔

这篇文章主要介绍了CSS利用伪元素实现导航栏斜线分隔的相关资料
收藏 0 赞 0 分享

纯CSS3打造属于自己的“小黄人”

这篇文章主要为大家详细介绍了纯CSS3打造属于自己的“小黄人”的相关代码,具有一定的参考价值,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

浅谈各种浏览器下的CSS Hack兼容性写法

这篇文章主要介绍了各种浏览器下的CSS Hack兼容性写法,CSS Hack大致可以分为内部Hack和选择器Hack以及HTML头部引用Hack,需要的朋友可以参考下
收藏 0 赞 0 分享

学习DIV+CSS网页布局之一列布局

学习DIV+CSS网页布局中的一列布局,本文为大家分享的是DIV+CSS网页布局教程的第一篇,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享

学习DIV+CSS网页布局之两列布局

学习DIV+CSS网页布局中的两列布局,本文为大家分享的是DIV+CSS网页布局教程的第二篇,感兴趣的小伙伴们可以参考一下
收藏 0 赞 0 分享
查看更多