如何使用CSS创建来电动画效果?
级联样式表 (CSS) 使开发人员能够为网页创建视觉效果,使其更具吸引力且用户友好。CSS 提供各种属性,例如颜色、flexbox、网格、动画、阴影等,以设置元素的样式,从而创建对许多用户具有吸引力且用户友好的网站。
在本文中,我们讨论了如何使用 HTML 和 CSS 设计来电动画效果。为了创建此效果,我们将使用 CSS 动画属性和 box-shadow 属性。
CSS 动画
它使开发人员能够为 HTML 元素添加动画效果,例如移动、振动等,从而为我们的网页增添美感。
语法
animation: animation-name | animation-duration | speed;
CSS box-shadow 属性
它使开发人员能够在一侧提供深色阴影,而在另一侧提供浅色阴影。
语法
box-shadow: values;
此属性的值为:
无 - 元素上不显示阴影。这是默认值。
水平偏移 - 将阴影从元素水平移动多远。offset-X 的正值会在元素右侧创建阴影。而负值则将阴影置于元素左侧。
垂直偏移 - 将阴影从元素垂直移动多远。offset-Y 的正值会在元素上方创建阴影,而负值则会在元素下方创建阴影。
模糊半径 - 它指定阴影的清晰度。数字越大,阴影越模糊,这意味着阴影会更大更浅。
扩展半径 - 它指定阴影的大小。如果其值为正,则大小增加。如果为负,则大小减小。
颜色 - 它指定阴影的颜色。
内阴影 - 它使开发人员能够创建阴影,从而使元素的内容看起来位于边框下方。因此,它在边框内创建阴影。
示例
<!DOCTYPE html> <html> <head> <style> #demo { border: 5px solid; padding: 10px 15px; box-shadow: -5px -10px 0px 5px yellow; } </style> </head> <body> <h1>The box-shadow property</h1> <article id="demo"> <p>This is an article element with a shadow. It contains four values that are offset-X (horizontal distance), offset-Y (vertical distance), spread radius and color. </p> </article> </body> </html>
创建来电动画效果
在下面的示例中,我们尝试使用 CSS Font Awesome 图标显示正在响铃的电话图标。
然后,我们使用 box-shadow 属性和 CSS 动画来创建响铃效果。为了控制动画的顺序,我们使用了 @keyframes。
示例
<!DOCTYPE html> <html> <head> <title>Incoming Call Animation</title> <link rel="stylesheet" href= "https://pro.fontawesome.com/releases/v5.10.0/css/all.css"> <style> body{ height: 80%; margin: 10px; padding: 0; display: flex; align-items: center; justify-content: center; background: black; } section{ position: absolute; top: 10%; display: flex; justify-content: center; align-items: center; border: 2px solid orange; height: 65%; width: 40%; } .call{ position: relative; background: black; color: orange; font-size: 35px; font-weight: bold; width: 70px; height: 70px; border-radius: 100%; border: solid 5px black; animation: anim 2s ease-in infinite, vibration 2s ease-in infinite; } .img{ position: absolute; top: 20px; left: 20px; height: 60px; width: 50px; } @keyframes anim { 0% { box-shadow: 0 1px 0 4px #ffffff; } 10%{ box-shadow: 0 1px 0 8px rgba(255, 165, 0, 1); } 25% { box-shadow: 0 1px 0 12px rgba(255, 210, 128, 1), 0 1px 0 16px rgba(255, 201, 102, 1); } 50% { box-shadow: 0 2px 5px 10px rgba(255, 184, 51, 1), 0 2px 5px 23px rgba(248, 248, 255, 1); } } @keyframes vibration { 0% { transform: rotate(0deg); } 25% { transform: rotate(20deg); } 50% { transform: rotate(0deg); } 75% { transform: rotate(-15deg); } 100% { transform: rotate(0deg); } } </style> </head> <body> <section> <div class= "call"> <i class= "fas fa-solid fa-phone img"> </i> </div> </section> </body> </html>
来电图标将显示在网页上,并且由于动画,将观察到响铃效果。
结论
在现代科技市场中,客户需要更多网站参与。此时,动画在增强沟通方面发挥着至关重要的作用。动画的交互性促进了用户互动,从而改善了用户体验。如果您希望您的网站在竞争中脱颖而出,同时又受到目标受众的喜爱,那么聘请顶级网站开发公司在您的网站中加入动画将大有裨益。