【闲来无聊写个几个小特效——五角星,小光圈,探照灯】

news2024/9/22 19:39:13

在这里插入图片描述

五角星,见过吧,如果是你,你如何使用代码写一个五角星呢?思考一下,你会说,先这样在那样就好啦,可是真正上手的时候却修修改改磕磕绊绊来看一下今天的五角星如何用几行代码实现

1.绘制五角星

四行代码实现五角星,首先我们需要写一个div给他一个class,然后再写五角星的样式,这里使用的是clip-path属性。那啥是clip-path啊?clip-path 属性使用裁剪方式创建元素的可显示区域。区域内的部分显示,区域外的隐藏。可以指定一些特定形状。polygon多边形的意思,里面有10对数值,分对应的是五角星的十条边,有的小伙伴说,你这也忒麻烦了,还要自己找边找点。确实自己找的话有点麻烦,于是出现了这样一个好东西
bennettfeely,这里面有许许多多的形状供你选择,光介绍没意思,来看一下如何使用吧。
第一步:
进入之后会看到这样一个页面点击Clippy…clip-paths
在这里插入图片描述
第二步:根据自己需要的图形来进行相应的调整,下方也会随着你的更改进行数值的变化,红色箭头所指的就是各种图形,蓝色箭头所指的是该图形的大小尺寸,绿色箭头指的是该裁剪图形的背景,调好后直接把下面的数值复制过来就行了
在这里插入图片描述
在这里插入图片描述

    <style>
        .star {
            width: 100px;
            height: 100px;
            background: plum;
            clip-path: polygon(50% 0%, 61% 35%, 98% 35%, 68% 57%, 79% 91%, 50% 70%, 21% 91%, 32% 57%, 2% 35%, 39% 35%);
        }
    </style>
</head>

<body>
    <div class="star"></div>
</body>

效果展示
在这里插入图片描述

2.炫酷加载光圈

第一步:去隔壁王叔叔家拿来一个div盒子和四个span,给盒子一个class,再设置盒子的属性,让它变成圆形,加个伪元素选择器,实现圆形到圆圈的一个变化。
第二步:给span也加上为元素选择器,使用linear-gradient实现渐变效果颜色可以设置自己喜欢的颜色。
第三步:使用filter过滤函数的blur属性来给span设置模糊。"radius"一值设定高斯函数的标准差,或者是屏幕上以多少像素融在一起, 所以值越大越模糊;如果没有设定值,则默认是0;这个参数可设置css长度值,但不接受百分比值。
第四步:设置动画使用@keyframes,然后给div添加上动画就完成了。

 <style>
        body {
            background: rgb(16, 1, 29);
        }

        .load {
            margin: 0 auto;
            margin-top: 200px;
            position: relative;
            width: 100px;
            height: 100px;
            border-radius: 50%;
            background: linear-gradient(rgb(200, 255, 0), rgb(0, 119, 255), rgb(51, 255, 51));
            animation: animate 0.8s linear infinite;
        }

        .load::after {
            content: '';
            position: absolute;
            top: 10px;
            left: 10px;
            right: 10px;
            bottom: 10px;
            background: black;
            border-radius: 50%;
        }

        .load span {
            position: absolute;
            width: 100%;
            height: 100%;
            border-radius: 50%;
            background: linear-gradient(rgb(200, 255, 0), rgb(0, 119, 255), rgb(51, 255, 51));
            animation: animate 0.8s linear infinite;
        }

        .load span:nth-child(1) {
            filter: blur(5px)
        }

        .load span:nth-child(2) {
            filter: blur(10px)
        }

        .load span:nth-child(3) {
            filter: blur(25px)
        }

        .load span:nth-child(4) {
            filter: blur(50px)
        }

        @keyframes animate {
            0% {
                transform: rotate(0deg);
            }

            100% {
                transform: rotate(360deg);
            }
        }
    </style>
</head>

<body>
    <div class="load">
        <span></span>
        <span></span>
        <span></span>
        <span></span>
    </div>
</body>

效果展示
在这里插入图片描述

3.探照灯

第一步:从王叔叔家拿来一个h1,在里面写上自己的名字,设置该h1的伪元素,这里的内容就不能为空了,而是attr(title)获取咱们设置的title文字,之后会使用到。
第二步:设置探照灯动画 ,还是使用clip-path,探照灯一般都是圆形的所以这里设置的就是一个圆形,设置动画内容就好了,可以根据自己喜欢的形状设置动画效果,将该动画设置到h1里面就能实现探照灯效果啦

 <style>
        body {
            text-align: center;
            background: rgb(66, 66, 66);
        }

        .spotlight {
            position: relative;
            display: inline-block;
            font-size: 48px;

        }

        .spotlight::after {
            position: absolute;
            width: 100%;
            height: 100%;
            top: 0;
            left: 0;
            content: attr(title);
            color: white;
            animation: spotlight 3s ease-in-out infinite alternate;
        }

        /* 设置探照灯动画 */
        @keyframes spotlight {
            0% {
                clip-path: ellipse(32px 32px at 0% 50%)
            }

            100% {
                clip-path: ellipse(32px 32px at 100% 50%)
            }
        }
    </style>
</head>

<body>
    <h1 title="你好,我是山鱼君" class="spotlight">
        你好,我是山鱼君
    </h1>
</body>

效果展示
在这里插入图片描述

点赞:您的赞赏是我前进的动力!👍
收藏:您的支持我是创作的源泉!⭐
评论:您的建议是我改进的良药!✍
山鱼的个人社区:欢迎大家加入我的个人社区——山鱼社区如果对你有帮助的话希望三连下

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/133653.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Pytorch进行自定义Dataset 和 Dataloader 原理

1、自定义加载数据 在pytorch中&#xff0c;数据集对象被抽象为Dataset类&#xff0c;实现自定义的数据集需要继承Dataset&#xff0c;并实现相应的方法。 在学习Pytorch的教程时&#xff0c;加载数据许多时候都是直接调用torchvision.datasets里面集成的数据集&#xff0c;直…

GO第 4 章:运算符

第 4 章 运算符 4.1 运算符的基本介绍 运算符是一种特殊的符号&#xff0c;用以表示数据的运算、赋值和比较等 运算符是一种特殊的符号&#xff0c;用以表示数据的运算、赋值和比较等 算术运算符 赋值运算符 比较运算符/关系运算符 逻辑运算符 位运算符 其它运算 4.2 …

Java开发环境安装

总步骤 第一步&#xff1a;安装JDK&#xff08;Java Development Kit&#xff0c;Java软件开发工具包&#xff09; 第二步&#xff1a;安装IDEA&#xff08;是Java语言的集成开发环境&#xff09; 一、安装JDK Windows下最简单的Java环境安装指南 - 大博哥VV6 - 博客园 (cnblo…

微信小程序框架

框架 小程序开发框架的目标是通过尽可能简单、高效的方式让开发者可以在微信中开发具有原生 APP 体验的服务。 整个小程序框架系统分为两部分&#xff1a;逻辑层&#xff08;App Service&#xff09;和 视图层&#xff08;View&#xff09;。小程序提供了自己的视图层描述语言…

【Linux】进程创建、进程终止和进程等待

​&#x1f320; 作者&#xff1a;阿亮joy. &#x1f386;专栏&#xff1a;《学会Linux》 &#x1f387; 座右铭&#xff1a;每个优秀的人都有一段沉默的时光&#xff0c;那段时光是付出了很多努力却得不到结果的日子&#xff0c;我们把它叫做扎根 目录&#x1f449;进程创建&…

力扣刷题记录——231. 2 的幂、228. 汇总区间、242. 有效的字母异位词

本专栏主要记录力扣的刷题记录&#xff0c;备战蓝桥杯&#xff0c;供复盘和优化算法使用&#xff0c;也希望给大家带来帮助&#xff0c;博主是算法小白&#xff0c;希望各位大佬不要见笑&#xff0c;今天要分享的是——《231. 2 的幂、228. 汇总区间、242. 有效的字母异位词》。…

【王道操作系统】2.2.4 作业进程调度算法(FCFS先来先服务、SJF短作业优先、HRRN高响应比优先)

作业进程调度算法(FCFS先来先服务、SJF短作业优先、HRRN高响应比优先) 文章目录作业进程调度算法(FCFS先来先服务、SJF短作业优先、HRRN高响应比优先)1.先来先服务(FCFS)2.短作业优先(SJF)3.高响应比优先(HRRN)4.三种算法的对比和总结1.先来先服务(FCFS) 先来先服务调度算法(F…

区间选点 and 最大不相交区间

区间选点 题目描述 给定 N 个闭区间 [ai,bi]&#xff0c;请你在数轴上选择尽量少的点&#xff0c;使得每个区间内至少包含一个选出的点。 输出选择的点的最小数量。 位于区间端点上的点也算作区间内。 输入输出及样例 最大不相交区间 题目描述 给定 N 个闭区间 [ai,bi]&…

ArcGIS基础实验操作100例--实验32计算栅格行列号

本实验专栏参考自汤国安教授《地理信息系统基础实验操作100例》一书 实验平台&#xff1a;ArcGIS 10.6 实验数据&#xff1a;请访问实验1&#xff08;传送门&#xff09; 高级编辑篇--实验32 计算栅格行列号 目录 一、实验背景 二、实验数据 三、实验步骤 &#xff08;1&am…

GPU存储器架构-- 全局内存 本地内存 寄存器堆 共享内存 常量内存 纹理内存

上表表述了各种存储器的各种特性。作用范围栏定义了程序的哪个部分能使用该存储器。而生存期定义了该存储器中的数据对程序可见的时间。除此之外&#xff0c;Ll和L2缓存也可以用于GPU程序以便更快地访问存储器。 总之&#xff0c;所有线程都有一个寄存器堆&#xff0c;它是最快…

【PDPTW】python调用guribo求解PDPTW问题(Li Lim‘s benchmark)之二

原文连接&#xff1a;知乎《使用Python调用Gurobi求解PDPTW问题&#xff08;Li & Lim’s benchmark&#xff09;》 分析文章&#xff1a;文章目录修改utlis.pytest.py运行DataPath"lc101.txt"修改 以及修改公示约束&#xff08;8&#xff09;与代码不符合的问题…

【QT开发笔记-基础篇】| 第五章 绘图QPainter | 5.13 抗锯齿

本节对应的视频讲解&#xff1a;B_站_视_频 https://www.bilibili.com/video/BV1YP4y1B7Ex 本节讲解抗锯齿效果 前面实现的效果中&#xff0c;仔细观看能看到明显的锯齿的效果&#xff0c;如下&#xff1a; 此时&#xff0c;可以增加抗锯齿的效果。 1. 关联信号槽 首先&…

22年12月日常实习总结

12月结束了&#xff0c;8月末开始准备的日常实习也算是告一段落了 准备了2个多月&#xff0c;面试了一个月&#xff0c;也拿了一些offer 算是小有感触&#xff0c;遂写下此文&#xff0c;供还在准备或者要准备日常实习的同学参考。 个人背景及投递的日常实录在这篇文章里 24…

RegNet——颠覆常规神经网络认知的卷积神经网络(网络结构详解+详细注释代码+核心思想讲解)——pytorch实现

RegNet的博客的准备我可谓是话费了很多的时间&#xff0c;参考了诸多大佬的资料&#xff0c;主要是网上对于这个网络的讲解有点少&#xff0c;毕竟这个网络很新。网上可以参考的资料太少&#xff0c;耗费了相当多的时间&#xff0c;不过一切都是值得的&#xff0c;毕竟学完之后…

第二证券|下周解禁市值超980亿元,多家机构参与解禁股评级

宁德年代迎来431.8亿元解禁。 下周A股解禁市值超980亿元 证券时报数据宝统计&#xff0c;1月3日至6日&#xff0c;A股商场将有53家上市公司迎来限售股解禁。以个股最新价计算&#xff0c;53股解禁市值合计981.68亿元。 从解禁规模来看&#xff0c;宁德年代和中国移动居前&…

4.搭建配置中心-使用SpringCloud Alibaba-Nacos

naocs除了做服务注册、发现&#xff0c;还可以做为配置中心&#xff0c;使用分以下几步 1.pom引入nacos-config依赖 <dependency><groupId>com.alibaba.cloud</groupId><artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId> &…

python中的多态和抽象类接口

目录 一.多态 抽象类&#xff08;接口&#xff09; 小结 一.多态 多态&#xff0c;指的是:多种状态&#xff0c;即完成某个行为时&#xff0c;使用不同的对象会得到不同的状态。 同样的行为&#xff08;函数&#xff09;&#xff0c;传入不同的对象得到不同的状态 演示 cl…

降维算法-sklearn

1.概述 维度&#xff1a; 对于数组和series&#xff0c;维度就是功能shape返回的结果&#xff0c;shape中返回了几个数字&#xff0c;就是几个维度。降维算法中的”降维“&#xff0c;指的是降低特征矩阵中特征的数量。降维的目的是为了让算法运算更快&#xff0c;效果更好&am…

LabVIEW​​开关模块与万用表DMM扫描模式

LabVIEW​​开关模块与万用表DMM扫描模式 在同步扫描模式下(Synchronous scanning)&#xff0c;扫描列表里面的每一条目都会在开关模块收到一个来自多功能数字万用表(DMM)的数字脉冲(触发输入)后执行.而DMM被编程设置为以一个固定的时间间隔去测量以及在每次测量完产生一个数字…

机器学习--数据清理、数据变换、特征工程

目录 一、数据清理 二、数据变换 三、特征工程 四、总结 一、数据清理 数据清理是提升数据的质量的一种方式。 数据不干净&#xff08;噪声多&#xff09;&#xff1f; 需要做数据的清理&#xff0c;将错误的信息纠正过来&#xff1b; 数据比较干净&#xff08;数据不是…