css 用多个阴影做出光斑投影的效果 box-shadow

css 用多个阴影做出光斑投影的效果 box-shadow

你首先需要知道的一点是 box-shadow 可以接收多个值,也就是可以设置多个阴影,这样就可以做一个类似光斑投影的效果。

一、效果

在这里插入图片描述

二、代码

里面用到了我一些 scss 工具方法,不过不影响,如果你只想用 css,可以把它改写成 css 的值就好了,区别不大。

SCSS

// 工具方法// box-shadow
@mixin box-shadow($value ...){-webkit-box-shadow:  $value;-moz-box-shadow:  $value;box-shadow:  $value;
}// border-radius
@mixin border-radius($corner: 5px){-webkit-border-radius: $corner;-moz-border-radius: $corner;border-radius: $corner;
}
@mixin transition($value){-webkit-transition: $value;-moz-transition: $value;-ms-transition: $value;-o-transition: $value;transition: $value;
}// Colors
$green        : #4CD964;
$cyan         : #5AC8FA;
$blue         : #007AFF;
$purple       : #5856D6;
$magenta      : #FF2D70;
$red          : #FF3B30;
$orange       : #FF9500;
$yellow       : #FFCC00;
$gray         : #8E8E93;
$grass        : #8BC34A;
$sky-blue     : #1BADF8;
$light-purple : #CC73E1;
$brown        : #A2845E;
$color-main: #FFCC00;.avatar{margin: 0 auto;width: 60px;height: 60px;@include border-radius(50px);outline-width: 1px;overflow: hidden;img{width: 100%;display: block;}@include box-shadow(0px 0px 0 transparentize(black, 0.6));@include transition(all 0.3s);&:hover{$timer: 1;  // 控制散开的距离大小,倍率@include transition(all 0.3s);@include box-shadow(3px*$timer 3px*$timer 0 transparentize(black, 0.6),-5px*$timer -8px*$timer 3px*$timer transparentize($color-main, 0.3),-15px*$timer 13px*$timer 4px*$timer transparentize($green, 0.3),-45px*$timer 8px*$timer 10px*$timer transparentize($cyan, 0.5),15px*$timer -15px*$timer 10px*$timer transparentize($blue, 0.1),65px*$timer 65px*$timer 30px*$timer transparentize($yellow, 0.6),20px*$timer 45px*$timer 15px*$timer transparentize($magenta, 0.2),-20px*$timer -45px*$timer 15px*$timer transparentize($red, 0.6),-105px*$timer 38px*$timer 20px*$timer transparentize($green, 0.5),15px*$timer -105px*$timer 10px*$timer transparentize($blue, 0.6),140px*$timer 45px*$timer 15px*$timer transparentize($magenta, 0.6),-20px*$timer -145px*$timer 40px*$timer transparentize($yellow, 0.6),60px*$timer -65px*$timer 40px*$timer transparentize($magenta, 0.2),);}
}

三、另一个实例

实例: https://kylebing.cn/diary/ 点 试用演示账户 就能看到。

在这里插入图片描述

移动端的时候如果散射这么严重就会不太好看,所以把因数调小, timer = 0.2 效果如下:
在这里插入图片描述
在这里插入图片描述

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

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

3D视觉-结构光测量-多线结构光测量

工作原理 多线结构光测量在测量方式上类似上述线结构光测量,但是两者也有着一些明显的差别。这种形式的结构光测量,也常常被成为面结构光测量。首先激光器发出电光源通过通过光栅的调制产生多个切片光束,这些切片光束照射到待测物体表面后形成…

C++线性表

线性表的定义及其运算 线性表是一种最简单、最基本也是最常用的线性结构。在线性结构中,数据元素之间存在一个对一个的线性关系,数据元素“一个接一个地排列”。在一个线性表中,数据元素的类型是相同的,或者说,线性表…

Git基础学习_p1

文章目录 一、前言二、Git手册学习2.1 Git介绍&前置知识2.2 Git教程2.2.1 导入新项目2.2.2 做更改2.2.3 Git追踪内容而非文件2.2.4 查看项目历史2.2.5 管理分支🔺2.2.6 用Git来协同工作2.2.7 查看历史 三、结尾 一、前言 Git相信大部分从事软件工作的人都听说过…

shell编程一

shell 定义 Shell 也是一种程序设计语言,它有变量,关键字,各种控制语句,有自己的语法结构,利用shell程序设计语 可以编写功能强、代码简短的程序 #! Shebang 定义解释器 shell的分类和切换 # cat /etc/shells /bin/sh…

win部署stable-diffusion

win部署stable-diffusion 1.环境2.模型3.使用4.效果 1.环境 首先下载stable-diffusion-webui,这个包了一层ui,特别好用。 git clone https://github.com/AUTOMATIC1111/stable-diffusion-webui.git然后搭建conda环境。 这里的pytorch,自己去…

鸿蒙HarmonyOS-带笔锋手写板(三)

笔者用ArkTS 写了一个简单的带笔锋的手写板应用,并且可以将手写内容保存为图片。 一、效果图 手写效果如下(在鸿蒙手机模拟器上运行,手写时反应可能会有点慢) 二、实现方法 参考文章: 支持笔锋效果的手写签字控件_a…

在Linux上搭建Maven仓库的实战教程

引言 在Java开发中,Maven作为项目构建和依赖管理的重要工具,其仓库的搭建至关重要。本文将手把手教你如何在Linux系统上安装并配置Nexus Repository Manager 3(简称Nexus 3),从而创建一个私有的Maven仓库。 步骤一&a…

论文阅读——Slide-Transformer(cvpr2023)

Slide-Transformer: Hierarchical Vision Transformer with Local Self-Attention 一、分析 1、改进transformer的几个思路: (1)将全局感受野控制在较小区域,如:PVT,DAT,使用稀疏全局注意力来…

两种汇编的实验

week04 一、汇编-1二、汇编-2 一、汇编-1 1 通过输入gcc -S -o main.s main.c -m32 将下面c程序”week0401学号.c“编译成汇编代码 int g(int x){ return x3; } int f(int x){ int i 学号后两位; return g(x)i; } int main(void){ return f(8)1; } 2. 删除汇编代码…

JS 嵌套循环之退出顶层循环

我们常常写循环的时候&#xff0c;可能会遇到嵌套循环&#xff0c;如果出现退出循环&#xff0c;一层还好&#xff0c;多层循环就费劲了&#xff0c;传统做法是加 flag&#xff0c;如下&#xff1a; for (let i 0; i < 10; i) {let flag falsefor (let j 0; j < 5; j…

oCPC实践录 | oCPM的秘密

前言 笔者从这几方面介绍oCPM&#xff0c;并一一分析平台侧宣称的oCPM相比oCPC的优势&#xff0c;并解开其中的秘密。 1&#xff09;什么是oCPM? 2&#xff09;oCPC与oCPM的异同 3&#xff09;平台宣称oCPM的优势 4&#xff09;oCPM真正的秘密 5&#xff09;oCPM下的点击率与…

【Java 进阶篇】深入浅出 Jedis 连接池与工具类

​ 在现代的软件开发中&#xff0c;高效地与数据存储系统进行交互是至关重要的。而对于 Redis 这样的高性能键值存储系统&#xff0c;连接池成为了一个不可或缺的工具。本文将围绕 Jedis 连接池及其工具类展开详细解说&#xff0c;让我们一起揭开连接池的神秘面纱。 走进 Red…