美妙的 CSS3 动画!一组梦幻般的按钮效果

简介:   今天给大家带来的是五款梦幻般的动画按钮效果。下面是在线演示,把鼠标放在按钮上试试,有惊喜哦!CSS3 引入了众多供功能强大的新特性,让设计和开发人员能够轻松的创作出各种精美的界面效果。   温馨提示:为保证最佳的效果,请在 IE10+、Chrome、Firefox 和 Safari 等现代浏览器中浏览。

  今天给大家带来的是五款梦幻般的动画按钮效果。下面是在线演示,把鼠标放在按钮上试试,有惊喜哦!CSS3 引入了众多供功能强大的新特性,让设计和开发人员能够轻松的创作出各种精美的界面效果。

  温馨提示:为保证最佳的效果,请在 IE10+、Chrome、Firefox 和 Safari 等现代浏览器中浏览。

 

 

源码下载     在线演示

 

  这些精美的效果用到了 CSS3 border-radius(圆角)、box-shadow(阴影)、transition(变形)、transform(转换)和 animation(动画)等特性,公共部分的代码精简以后如下:

section > div {
    display: inline-block;
    position: relative;
    width: 200px;
    height: 200px;
    margin: 0px auto;
    /*对于正方形元素border-radius设置为50%刚好变成圆形*/
    border-radius: 50%; 
    /*宽度为10px的、不透明度为0.7的黑色边框效果*/
    border: 10px solid hsla(0,0%,0%,.7); 
    /*通过边框阴影实现立体按钮效果,inset是内阴影效果*/
    box-shadow: inset 0 15px 15px -5px hsla(0,0%,100%,.7), 
                inset 0 -5px 10px 3px hsla(0,0%,0%,.6), 
                0 8px 10px 2px hsla(0,0%,0%,.3);
    background-position: center;
    /*初始缩放0.66倍*/
    transform: scale(.66); 
    /*在失去焦点时根据自定义的贝塞尔时间曲线做动画变换效果*/
    transition: transform .5s cubic-bezier(.32,0,.15,1); 
}
 
section > div:hover {
    cursor: none;
    /*悬停时恢复原始大小*/
    transform: scale(1); 
    /*鼠标悬停时根据自定义的贝塞尔时间曲线做动画变换效果*/
    transition: transform .2s cubic-bezier(.32,0,.15,1); 
}

  上面的代码中用到了贝塞尔曲线,在数学的数值分析领域中,贝塞尔曲线又称贝赛尔曲线(Bézier曲线)是电脑图形学中相当重要的参数曲线。更高维度的广泛化贝塞尔曲线就称作贝塞尔曲面,其中贝塞尔三角是一种特殊的实例。

  贝塞尔曲线于1962年,由法国工程师皮埃尔·贝塞尔(Pierre Bézier)所广泛发表,他运用贝塞尔曲线来为汽车的主体进行设计。贝塞尔曲线最初由Paul de Casteljau于1959年运用de Casteljau算法开发,以稳定数值的方法求出贝塞尔曲线。想更加深入的了解贝塞尔曲线可以到维基百科了解:贝塞尔曲线

  效果一(Praticle)使用了 CSS3 radial-gradient(径向渐变或者放射性渐变,另外一种是线性渐变)、repeating-radial-gradient(重复渐变)以及 CSS3 Animation(动画)

  为了便于阅读和学习,效果一的代码精简后如下:

.particle {
    background-size: 12px 12px;
    background-color: #000;
    /*前面公共样式部分box-shadow产生的高亮效果太强,这里重新配置*/
    box-shadow: inset 0 15px 15px -5px hsla(0,0%,100%,.25),
                inset 0 -5px 10px 3px hsla(0,0%,0%,.6),
                0 8px 10px 2px hsla(0,0%,0%,.3);
    /*使用径向渐变和重复渐变来实现背景图片效果*/
    background-image: radial-gradient( #555 0px, hsla(0,0%,0%,0) 2px, hsla(0,0%,0%,0) 24px),
                      repeating-radial-gradient( white 0px, black 2px, black 48px);
}

.particle:hover {
    /*鼠标悬停的时候执行particle-size和particle-positon两个动画效果*/
    animation: particle-size .24s linear infinite, 
        particle-positon .48s linear infinite alternate;
}
    
@keyframes particle-size { 
    /*这个名为particle-size的关键帧用来产生背景尺寸变化动画效果*/
    from { background-size: 6px 6px, 12px 12px; } 
    to { background-size: 12px 12px, 24px 24px; } 
}

@keyframes particle-positon { 
    /*这个名为particle-positon的关键帧用来产生背景位置变化动画效果*/
    from { background-position: 60px, 60px; } 
    to { background-position: 140px, 140px; } 
}

 

源码下载    在线演示

 

您可能感兴趣的相关文章

 

本文链接:神奇的 CSS3 动画!一组梦幻般的按钮效果

编译来源:梦想天空 ◆ 关注前端开发技术 ◆ 分享网页设计资源

作者:山边小溪
主站:yyyweb.com 记住啦:)
欢迎任何形式的转载,但请务必注明出处。

相关文章
|
26天前
|
机器学习/深度学习 前端开发 JavaScript
|
8天前
|
前端开发 搜索推荐 UED
实现 CSS 动画效果的兼容性
【10月更文挑战第16天】实现 CSS 动画效果的兼容性需要对不同浏览器的特性有深入的了解,并采取适当的策略和方法。通过不断的实践和优化,你可以在各种浏览器上创造出流畅、美观且兼容的动画效果,为用户带来更好的体验。在实际开发中,要密切关注浏览器的发展动态,及时掌握最新的兼容性技巧和解决方案,以确保你的动画设计能够在广泛的用户群体中得到良好的呈现。
|
13天前
|
前端开发 JavaScript API
探索 CSS Houdini:轻松构建酷炫的 3D 卡片翻转动画
本文通过构建一个 3D 翻卡动画深入探讨了 CSS Houdini 的强大功能,展示了如何通过 Worklets、自定义属性、Paint API 等扩展 CSS 的能力,实现高度灵活的动画效果。文章首先介绍了 Houdini 的核心概念与 API,并通过构建一个动态星空背景、圆形进度条以及交互式 3D 翻卡动画的实际示例,展示了如何利用 CSS Houdini 赋予网页设计更多创造力。最后,还演示了如何将这种 3D 翻卡效果集成到公司网站中,提升用户体验。CSS Houdini 的创新能力为网页设计带来了前所未有的灵活性,推动了前端开发迈向新的高度。
19 0
探索 CSS Houdini:轻松构建酷炫的 3D 卡片翻转动画
|
2月前
|
JavaScript 前端开发
JS配合CSS3实现动画和拖动小星星小Demo
本文通过代码示例展示了如何使用JavaScript和CSS3实现动画效果和拖动小星星的交互效果,包括文字掉落动画和鼠标拖动产生小星星动画的实现方法。
36 0
JS配合CSS3实现动画和拖动小星星小Demo
|
24天前
|
前端开发
CSS 动画介绍及语法
CSS 动画介绍及语法
24 0
|
3月前
|
前端开发 UED 开发者
有趣的CSS - 文字加载动画效果
这个文本加载动画简单而有趣,可以在网站标题、广告标语或者关键信息的展示上吸引用户的注意力。开发者可以根据需要调整动画的持续时间、步骤数,或者光标颜色等,来适应特定的设计需求。使用这种动态元素,增强网站的互动性和用户体验,同时也为网站增添了一抹活泼的风格。
53 5
|
3月前
|
前端开发 JavaScript
HTML+CSS如何打造撒花动画效果?3分钟学会,炫酷到爆!
HTML+CSS如何打造撒花动画效果?3分钟学会,炫酷到爆!
|
3月前
|
前端开发
CSS动画霓虹灯闪烁效果
CSS动画霓虹灯闪烁效果
|
3月前
|
前端开发 JavaScript
还在为酷炫css动画背景头疼吗?1分钟解决
还在为酷炫css动画背景头疼吗?1分钟解决
|
3月前
|
前端开发 JavaScript 开发者
css过渡与动画
css过渡与动画
39 0