【前端技巧】CSS常用知识碎片(九)

news/2025/2/12 3:38:48/

CSS常用知识碎片(九)

mask-image属性

  • 带有半透明的PNG图像的遮罩效果
.mask-image {mask: no-repeat center / contain;mask-image: url(bird.png);
}
  • SVG图形遮罩效果
.mask-image {mask-image: url("data:image/svg+xml,%3Csvg viewBox='0 0 3232'%3E%3Cpath d='M28.0275.161l-17.017 17.017-7.007-7.007-3.003 3.003 10.010 10.010 20.020-20.020z'%3E%3C/path%3E%3C/svg%3E");mask-repeat: no-repeat;
}
  • 用渐变图像实现遮罩效果
.mask-image {width: 256px; height: 192px;mask-image: radial-gradient(600px 80px at top, transparent150px, black 152px 1000px,transparent 0)radial-gradient(600px 80px at bottom, transparent 150px,black 152px 1000px,transparent 0);
}

CSS遮罩的一些经典应用示例

  • CSS遮罩实现的渐变小图标效果
/* 纯色 */
.icon-delete {display: inline-block;width: 20px; height: 20px;/* 背景色设为当前color的颜色 */background-color: currentColor;/* 小图标图像作为遮罩图像使用 */--mask: url(delete.png) no-repeat center / 1.125em 1.125em;-webkit-mask: var(--mask);mask: var(--mask);
}
/* 渐变色 */
.icon-delete {background: linear-gradient(deepskyblue, deeppink);mask: url(delete.png) no-repeat center;
}

倒影效果

-webkit-box-reflect: below;

scroll-behavior: smooth 平滑切换容器

.box {scroll-behavior: smooth;overflow: hidden;
}

可在CSS重置时,统一对页面滚动做平滑处理

html, body { scroll-behavior:smooth; }

利用 overscroll-behavior: contain 默认的滚动溢出行为只会表现在当前元素的内部(例如“反弹”效果或刷新),不会对相邻的滚动区域进行滚动。

overscroll-behavior: contain;

利用 overflow-anchor:auto 滚动锚定,优化局部元素滚动效果

overflow-anchor: auto;

CSS Scroll Snap

  • 利用 CSS Scroll Snap 让页面滚动停留在你希望用户关注的重点区域
<body><div class="scroll-x"><img src="1.jpg"><img src="2.jpg"><img src="3.jpg"><img src="4.jpg"></div>
</body>
<style>
.scroll-x {max-width: 414px; height: 420px;scroll-snap-type: x mandatory;white-space: nowrap;overflow: auto;
}
.scroll-x img {scroll-snap-align: center;
}
</style>

scroll-snap-type属性

  • 作用:确定定位方式是水平滚动定位,还是垂直滚动定位。
属性值释义
none默认值,表示滚动时忽略捕捉点,也就是我们平时使用的滚动
x捕捉水平定位点
y捕捉垂直定位点
block捕捉和块状元素排列一个滚动方向的定位点,默认文档流下指的就是垂直轴
inline捕捉和内联元素排列一个滚动方向的定位点,默认文档流下指的就是水平轴
both横轴、纵轴都捕捉
mandatory表示“强制”,为可选参数。强制定位,也就是如果存在有效的定位点位置,则滚动容器必须在滚动结束时进行定位
proximity表示“大约”,为可选参数。可能会定位,类似这种表意模糊的词是最难理解的,这个值的作用表现为让浏览器自己判断要不要定位。

scroll-snap-stop属性

  • 作用:是否允许滚动容器忽略捕获位置。
属性值释义
normal默认值,可以忽略捕获位置
always不能忽略捕获位置,且必须定位到第一个捕获元素的位置

scroll-snap-align属性

  • 作用:在滚动容器子元素上的,表示捕获点是上边缘、下边缘或中间位置。
属性值释义
none默认值,不定义位置
start起始位置对齐,如垂直滚动、子元素和容器同上边缘对齐
end结束位置对齐,如垂直滚动、子元素和容器同下边缘对齐
center居中对齐,子元素中心和滚动容器中心一致

使用cater-color属性改变插入光标的颜色

input {color: #333;caret-color: red;
}

user-select属性

  • 禁止图文被选中
body {-webkit-user-select: none;user-select: none;
}
  • 单击元素选中所有图文
section {user-select: all;
}

签名动画效果

path {stroke-dasharray: 1000;stroke-dashoffset: 1000;animation: dash 5s linear infinite;
}
@keyframes dash {to {stroke-dashoffset: 0;}
}

进度圆环动画效果

<svg width="440" height="440" viewBox="0 0 440 440"><defs><linearGradient x1="1" y1="0" x2="0" y2="0" id="gradient"><stop offset="0%" stop-color="#e52c5c"></stop><stop offset="100%" stop-color="#ab5aea"></stop></linearGradient></defs><circle cx="220" cy="220" r="170" class="circle-track"></circle><circle cx="220" cy="220" r="170" transform="rotate(-90 220 220)" class="circle-bar"></circle><text class="text" x="50%" y="50%" dominant-baseline="middle" text-anchor="middle">0%</text>
</svg>
circle {
stroke-width: 50px;
fill: none;
stroke-dasharray: 1069px;circle {stroke-width: 50px;fill: none;stroke-dasharray: 1069px;
}
.circle-track {stroke: #f0f1f5;
}
.circle-bar {stroke-dashoffset: 1069px;stroke: url(#gradient);
}
.text {font-size: 50px;
}circle {stroke-width: 50px;fill: none;stroke-dasharray: 1069px;
}
.circle-track {stroke: #f0f1f5;
}
.circle-bar {stroke-dashoffset: 1069px;stroke: url(#gradient);
}
.text {font-size: 50px;
}
/* 灰色进度槽 */
stroke: #f0f1f5;
}
/* 渐变进度条 */
.circle-bar {
/* stroke-dashoffset慢慢变小,进度条就会慢慢出现 */
stroke-dashoffset: 1069px;
stroke: url(#gradient);
}

http://www.ppmy.cn/news/880845.html

相关文章

亲测有效!!解决MySQL8误删root账号无法登录的问题

亲测有效&#xff01;&#xff01;解决MySQL8误删root账号无法登录的问题 前言1. 进入cmd ,停止MySQL服务 net stop mysql2. 输入&#xff1a; mysqld --console --skip-grant-tables --shared-memory3.另外开一个cmd&#xff0c;使用mysql直接无密登录 mysql -u root –p&…

ElasticSearch简单介绍以及基本概念阐述

文章目录 一、ES是什么二、ES主要功能1、实时数据搜索和分析&#xff1a;2、分布式架构&#xff1a;3、全文搜索&#xff1a;4、实时数据分析&#xff1a;5、多种数据类型支持&#xff1a;6、实时监控和可视化&#xff1a;7、安全性和访问控制&#xff1a;8、多种集成和扩展&am…

第三方api对接怎么做?淘宝1688api接口怎么对接?

在今天的互联网上&#xff0c;第三方API对接是必不可少的。这种技术将不同的应用程序/服务连接在一起&#xff0c;创造了无限的可能性。 第三方api对接怎么做&#xff1f; 1、与支付公司签约 首先&#xff0c;通过正规的渠道&#xff0c;如支付公司官网或正规服务商&#xf…

HT合泰单片机入门教程(第五章 PWM)

文章目录 系列文章目录前言一、新建工程二、PWM相关了解1.PWM了解2.硬件电路了解 三、PWM实现1.代码实现 总结 系列文章目录 第一章 HT单片机环境搭建 第二章 点亮第一个LED灯 第三章 按键 第四章 定时器 第五章 PWM 第六章 时基中断 第七章 LCD 前言 PWM 信号把模拟信号…

S5PV210开发 -- 驱动开发相关硬件简介

如需转载请注明出处&#xff1a;https://blog.csdn.net/qq_29350001/article/details/78485355 到此&#xff0c;开发板已经是算跑起来了。系统移植部分稍后再讲。我们先举两个例子&#xff0c;让LED亮起来、蜂鸣器响起来。 一、LED亮起来 &#xff08;1&#xff09;LED 正负…

【STC单片机学习】第十一课:蜂鸣器

【朱老师课程总结 侵删】 第一部分、章节目录 1.11.1.蜂鸣器的原理​​ 1.11.2.让蜂鸣器响起来 1.11.3.用定时器控制蜂鸣器音调 1.11.4.蜂鸣器发出滴滴声 1.11.5.让蜂鸣器唱歌1 1.11.6.让蜂鸣器唱歌2 第二部分、章节介绍 1.11.1.…

stc89c51单片机音乐盒系统设计_基于单片机的音乐盒设计资料 含PCB与原理图,源程序和报告...

1 选题的背景 本次课设是应用单片机原理和控制理论设计音乐演奏控制器的硬件电路,并利用C语言进行程序设计。通过控制单片机内部的定时器来产生不同频率的方波,驱动喇叭发出不同的音调的音乐,在利用延迟来控制发音时间的长短。把乐谱转化成相应的定时常数就可以从发音设备中…

总务部竞赛部联合培训(硬件)

文章目录 一&#xff0e;按键&#xff08;1&#xff09;按键介绍&#xff08;2&#xff09;上拉输入和下拉输入&#xff08;2&#xff09;上拉输入和下拉输入&#xff08;3&#xff09;按键抖动和消抖硬件消抖&#xff1a;软件消抖&#xff1a; 二&#xff0e;蜂鸣器&#xff0…