位置: IT常识 - 正文

纯CSS实现边框流光效果(跑马灯效果)(css边框怎么做)

编辑:rootadmin
纯CSS实现边框流光效果(跑马灯效果)

推荐整理分享纯CSS实现边框流光效果(跑马灯效果)(css边框怎么做),希望有所帮助,仅作参考,欢迎阅读内容。

文章相关热门搜索词:css边框代码大全,css边框实现效果图及代码,css边框代码大全,漂亮的css边框,漂亮的css边框,使用css制作边框效果的网页,使用css制作边框效果的网页,使用css制作边框效果的网页,内容如对您有帮助,希望把文章链接给更多的朋友!

首先上一个效果图

有木有发现和夜晚街上的广告牌很像,接下来让我们看看如何使用css实现的吧

结构分析

首先很明显应该使用一个盒子将文字装起来,并且将文字进行了居中,然后我们看到这盒子的周围围绕了两条光带,那么这两条光带是怎么实现的呢?

其实这是用四个小盒子实现的,将这四个小盒子分别放在大盒子的周围(紧贴这大盒子的内壁),然后使用这几个小盒子实现流光(跑马灯)效果。

接下来看看具体的代码实现

代码实现HTML结构

首先准备一个div大盒子,用来装我们的广告语,还有跑马灯的四个小盒子

<div class="main">跑马灯<div></div><div></div><div></div><div></div></div>给大盒子设置样式,方便我们在浏览器中看到body {background-color: #000;}.main {position: absolute;width: 400px;height: 150px;top: 50%;left: 50%;transform: translate(-50%, -50%);//当为百分百单位时,相对的是自身的宽高overflow: hidden; //溢出部分隐藏text-align: center;line-height: 150px; background-color: transparent;color: aquamarine;font-size: 30px;font-family: '宋体';}

当前效果是这样的

接下来我们给大盒子设置灯光效果。

内部灯光效果

在效果图上,我们可以看到灯光尾部的颜色比较淡,头部颜色较亮, 展现出一种过渡效果,那这样的效果是怎么实现的呢?

这里就需要用到css3中background的一个新的属性值:linear-gradient,通过这个属性,我们可以将多个颜色设置为一个盒子的背景颜色,并且还有过渡效果,更强大的地方在于,这个属性值可以设置渐变的方向。

语法:linear-gradient(渐变方向,color1,color2,color3...)

纯CSS实现边框流光效果(跑马灯效果)(css边框怎么做)

这里我选择了#fff, #acd, cyan渐变的三种配色

那就开始使用这个属性值,这是其中一个小盒子的效果(顶部),其他的效果实现方法都类似。

.main div {position: absolute;}.main :nth-child(1) {top: 0;left: 0;width: 100%; //与父盒子等宽height: 2px; //高要设置得较小background: linear-gradient(to right, #fff, #acd, cyan);}

这里设置的是顶部的灯光效果,使用top和left的属性设置这个盒子的位置;使用width:100%,使得这个盒子的宽度与大盒子保持一致,然后使用height:2px,将灯光条的宽度设置为2px,当然也可以根据实际需求,改变灯光条的宽度

接着剩下三条灯光的实现原理基本相同,只有位置和背景颜色不同

剩下右,下,左背景颜色的渐变方向分别是to bottom、to left、to top

目前效果是这样的:

 这离我们想要的跑马灯效果越来越像了

其实我们还差最后一步,给灯光加上动画效果,也就是css3中的animation动画属性

同样我们也以设置顶部的灯光效果作为示范:

css3动画:

@keyframes run1 {from {transform: translateX(-100%) //初始让它沿X轴负方向(向左)位移自身的宽度}to {transform: translateX(100%) //动画结束时,让它回到原位}}

 给盒子加上动画

.main :nth-child(1) {top: 0;left: 0;width: 100%;height: 2px; animation: run1 1s linear infinite;//复合属性写法,其中infinite是让动画效果无限循环background: linear-gradient(to right, #fff, #acd, cyan);}

前面没有设置动画之前,可以看到颜色最深的部分在最右边,但是跑马灯的实现需求是需要颜色最深部分从左边出现,然后移动到右边,所以应该将动画的初识位置向左移整个盒子的长度,这样就实现了需求

剩下三个盒子的实现方式类似,设置好后,最终得到我们想要的跑马灯效果

想要了解css3动画的可以看看这篇文章,讲解得很详细

全部代码如下:

<!DOCTYPE html><html lang="en"><head><meta charset="UTF-8"><meta http-equiv="X-UA-Compatible" content="IE=edge"><meta name="viewport" content="width=device-width, initial-scale=1.0"><title>Document</title></head><style>body {background-color: #000;}.main {position: absolute;width: 400px;height: 150px;top: 50%;left: 50%;transform: translate(-50%, -50%);overflow: hidden;text-align: center;background-color: transparent;line-height: 150px;color: aquamarine;font-size: 30px;font-family: '宋体';}.main div {position: absolute;}.main :nth-child(1) {top: 0;left: 0;width: 100%;height: 2px;animation: run1 1s linear infinite;/* animation-delay: 0s; */background: linear-gradient(to right, #fff, #acd, cyan);}.main :nth-child(2) {top: 0;right: 0;height: 100%;width: 2px;animation: run2 1s linear infinite;/* animation-delay: 1s; 设置动画延迟加载时间*/background: linear-gradient(to bottom, #fff, #acd, cyan);}.main :nth-child(3) {bottom: 0;left: 0;height: 2px;width: 100%;animation: run3 1s linear infinite;/* animation-delay: 2s; 设置动画延迟加载时间*/background: linear-gradient(to right, #fff, #acd, cyan);}.main :nth-child(4) {top: 0;left: 0;height: 100%;width: 2px;animation: run4 1s linear infinite;/* animation-delay: 3s; 设置动画延迟加载时间 */background: linear-gradient(to top, #fff, #acd, cyan);}@keyframes run1 {from {transform: translateX(-100%)}to {transform: translateX(100%)}}@keyframes run2 {from {transform: translateY(-100%)}to {transform: translateY(100%)}}@keyframes run3 {from {transform: translateX(100%)}to {transform: translateX(-100%)}}@keyframes run4 {from {transform: translateY(100%)}to {transform: translateY(-100%)}}</style><body><div class="main">海绵宝宝<div></div><div></div><div></div><div></div></div></body></html>

最后,希望本文对你有所帮助,阿里嘎多

本文链接地址:https://www.jiuchutong.com/zhishi/280495.html 转载请保留说明!

上一篇:msg32.exe是什么进程 有什么作用 msg32进程查询(msg3.0.db是什么文件)

下一篇:一个非常好看的前端Vue3登录页面(一个非常好看的中秋礼物怎么做)

  • 汇算清缴需要做分录吗
  • 所得税费用为负数
  • 当月开的票必须当月交税吗
  • 无形资产减值损失一经确认在以后期间不得转回
  • 取暖费摊销期限是多少年
  • 银行商业承兑汇票到期怎么兑现
  • 小规模纳税人开普票要交税吗
  • 个人所得税补交税
  • 汇算清缴之后报销去年的票如何分录?
  • 生产出来的次品怎么入账
  • 押金是为了什么
  • 农产品收购发票是普票还是专票
  • 附追索权的应收债权出售的会计处理
  • 打印机需要计提折旧吗
  • 旅游业务开什么发票
  • 出售已计提减值准备的固定资产
  • 银行手续费抵扣税率是多少
  • 进出口免抵退税操作
  • 兼职人员个税起征点
  • 床垫专票可以抵扣吗
  • msiexec.exe是什么进程介绍
  • 印花税减半征收优惠政策2023
  • 人力资源劳务外包合同
  • 应付债券包括
  • 确认坏账的会计处理
  • 亡灵节mid
  • 政府会计公共基础设施的概念和内容
  • 优酷路由宝还有用吗
  • php dicom
  • 商铺转让权是什么意思
  • 增值税怎样计算
  • php imagecopymerge
  • 建筑行业施工规范有哪些
  • php面向对象优点,缺点
  • 软件和信息技术服务业发展趋势
  • javascript图表
  • python 构建
  • unity loom插件
  • detr训练自己的数据集
  • imu模型
  • 联营企业和合营企业是什么意思
  • mongo groupby
  • 公司购买空调计入什么费用
  • 生产企业免抵退税实例
  • 汽车的计提折旧
  • 会计人员信息采集工作证明模板
  • 个税申报方式是什么意思
  • 适用5%征收率的范围
  • 一次性伤残补助金怎么查询进度
  • 企业无力支付票据
  • 建筑安装印花
  • 建筑施工安全费用提取标准
  • 一般纳税人可以开1%的发票吗
  • 新收入准则按照期间确认收入
  • 生物资产转让增值税
  • 股东分派现金股利怎么算
  • 水电费没有发票可以入账吗
  • mongodb与mysql相比的优缺点
  • Linux下MySQL5.7.18 yum方式从卸载到安装过程图解
  • 在linux系统中
  • ubuntu怎么编辑文件
  • xp安装盘复制u盘
  • win10 edge浏览器设置信任站点
  • linux shell命令大全
  • perl -i -pe
  • 原生js有用吗
  • Jqprint实现页面打印
  • js 拍照
  • nvm-windows
  • NGUI学习笔记汇总
  • js domcontentloaded
  • 详解九章算法
  • 安卓应用 开发
  • 票种核定和税种核定的区别
  • 化妆品的消费税税率是多少
  • 三亚 税务
  • 个体户增值税申报比对不符怎么处理
  • 安置残疾人即征即退
  • 考公务员国家税务局好吗
  • 个人领税票需要哪些资料
  • 免责声明:网站部分图片文字素材来源于网络,如有侵权,请及时告知,我们会第一时间删除,谢谢! 邮箱:opceo@qq.com

    鄂ICP备2023003026号

    网站地图: 企业信息 工商信息 财税知识 网络常识 编程技术

    友情链接: 武汉网站建设