css使用clip-path属性切割显示可见内容

1. 需求

想要实现一个渐变的箭头Dom,不想使用svg、canvas去画,可以考虑使用css的clip-path属性切割显示内容。

2. 实现

<div class="arrow">箭头
</div>
.arrow{width: 200px;height: 60px;background-image: linear-gradient(45deg, #1e90ff, #00bfff);position: relative;clip-path: polygon(0% 0%, 80% 0%, 90% 50%, 80% 100%, 0% 100%, 10% 50%);line-height: 60px;text-align: center;color: white;
}

3. 效果

在这里插入图片描述

4. 讲解

clip-pathCSS 属性使用裁剪方式创建元素的可显示区域。区域内的部分显示,区域外的隐藏。

用于裁剪的值有三种类型,分别是basic-shapeclip-sourcegeometry-box

类型解释
basic-shape使用基本形状函数来定义裁剪路径。
clip-source可以是一个URL,指向一个SVG中的<clipPath>元素。
geometry-box如果与<basic-shape>一起使用,则它定义了<basic-shape>相对的盒子模型;
单独使用时,它使用指定的盒子作为裁剪路径。

注意:这是说该属性的用于裁剪的值有三种类型,不是指具体的值是这三种。

4.1 使用盒子属性裁剪

/* <geometry-box> values */
clip-path: margin-box;
clip-path: border-box;
clip-path: padding-box;
clip-path: content-box;
clip-path: fill-box;
clip-path: stroke-box;
clip-path: view-box;

4.2 常用的基本形状函数

/* <basic-shape> values */
clip-path: inset(100px 50px);	/* 矩形裁剪路径 */
clip-path: circle(50px at 0 100px);	/* 圆形裁剪路径 */
clip-path: ellipse(50px 60px at 10% 20%);	/* 椭圆裁剪路径 */
clip-path: polygon(50% 0%, 100% 50%, 50% 100%, 0% 50%);	/* 多边形裁剪路径 */

也可以按照svg的path裁剪。

clip-path: path("M0.5,1 C0.5,1,0,0.7,0,0.3 A0.25,0.25,1,1,1,0.5,0.3 A0.25,0.25,1,1,1,1,0.3 C1,0.7,0.5,1,0.5,1 Z"
);

4.3 组合使用 geometry-boxbasic-shape

/* Box and shape values combined */
clip-path: padding-box circle(50px at 0 100px);

4.4 使用 SVG 定义裁剪路径

通过引用一个SVG内的<clipPath>元素来定义更复杂的裁剪路径。

<svg width="0" height="0"><defs><clipPath id="myClip"><circle cx="50" cy="50" r="50"/></clipPath></defs>
</svg>
.example {clip-path: url(#myClip);
}

注意:使用前注意浏览器兼容性,比较早的浏览器未必支持。

求关注
在这里插入图片描述

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

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

相关文章

Kotlin与物联网(IoT):Android Things开发探索

在物联网&#xff08;IoT&#xff09;领域&#xff0c;Kotlin 凭借其简洁性、安全性和与 Java 生态的无缝兼容性&#xff0c;逐渐成为 Android Things 开发的有力工具。尽管 Google 已于 2022 年宣布停止对 Android Things 的官方支持&#xff0c;但其技术思想仍值得探索&#…

2025年AI搜索引擎发展洞察:技术革新与市场变革

引言&#xff1a;AI搜索的崛起与市场格局重塑 2024-2025年&#xff0c;AI搜索市场迎来了前所未有的变革期。随着DeepSeek-R1等先进大语言模型的推出&#xff0c;传统搜索引擎、AI原生搜索平台以及各类内容平台纷纷加速智能化转型&#xff0c;推动搜索技术从基础信息检索向深度…

基于 ESP32 与 AWS 全托管服务的 IoT 架构:MQTT + WebSocket 实现设备-云-APP 高效互联

目录 一、总体架构图 二、设备端(ESP32)低功耗设计(适配 AWS IoT) 1.MQTT 设置(ESP32 连接 AWS IoT Core) 2.低功耗策略总结(ESP32) 三、云端架构(基于 AWS Serverless + IoT Core) 1.AWS IoT Core 接入 2.云端 → APP:WebSocket 推送方案 流程: 3.数据存…

【LeetCode 热题 100】有效的括号 / 最小栈 / 字符串解码 / 柱状图中最大的矩形

⭐️个人主页&#xff1a;小羊 ⭐️所属专栏&#xff1a;LeetCode 热题 100 很荣幸您能阅读我的文章&#xff0c;诚请评论指点&#xff0c;欢迎欢迎 ~ 目录 栈有效的括号最小栈字符串解码每日温度柱状图中最大的矩形 堆数组中的第K个最大元素 栈 有效的括号 有效的括号 cl…

Petalinux

Petalinux 命令 参考《UG 1157 PetaLinux Command Line Reference Guide》 //创建petalinux工程 petalinux-create -t project --template zynq -n <name> //配置工程 cd 上一步的工程 petalinux-config --get-hw-description ../xsa_folder///配置Linux内核 petalinux-…

【Qt】在OrinNX上,使用命令安装qtmultimedia5-dev时报错

1、问题描述 在OrinNX+Ubuntu20.04上,使用命令安装qtmultimedia5-dev时报错 sudo apt install qtmultimedia5-devThe following packages have unmet dependencies: qtmultimedia5-dev : Depends: libpulse-dev but it is not going to be installed E: Unable to correct p…

上肢康复机器人设计与临床应用研究

引言 脑卒中、脊髓损伤等神经系统疾病导致的上肢运动功能障碍&#xff0c;严重影响了患者的生活质量。传统康复治疗依赖治疗师手动辅助训练&#xff0c;存在效率低、量化难、人力成本高等问题。上肢康复机器人通过精准的运动控制与生物反馈机制&#xff0c;为实现高效、标准化…

mysql不能聚合之数据清洗逗号

有时候因为数据库不严谨导致了出现有些数字很奇怪例如这样是varchar类型的字符串&#xff0c; 这种数据不能用来运算聚合&#xff0c;那么要怎么办呢&#xff1f; 这样就搞定 REPLACE(your_column, ,, )​​&#xff1a;将字段中的逗号移除&#xff0c;例如将3,553,850.28转换…

chrome 浏览器插件 myTools, 日常小工具。

1. 起因&#xff0c; 目的: 比如&#xff0c;chatgpt, google&#xff0c; 打开网页&#xff0c;就能直接输入文字&#xff0c;然后 grok 就不行&#xff0c;必须用鼠标点一下&#xff0c;才能输入文字。 对我而言&#xff0c;是个痛点&#xff01;写个插件&#xff0c;自动点…

outbox架构解说

Outbox 模式是一种用于实现数据一致性的架构模式&#xff0c;特别是在微服务架构中。 它确保在处理事务时&#xff0c;数据的原子性和最终一致性。 Outbox 模式的详细解说&#xff1a; 1. 概念与背景 背景&#xff1a;在微服务架构中&#xff0c;一个操作可能涉及多个服务&…

喷涂喷漆机器人详解

1. 定义 喷涂喷漆机器人是专为表面涂装设计的自动化工业设备&#xff0c;通过精准控制实现高效、均匀的涂料喷涂。其核心价值在于提升生产效率、保障质量一致性&#xff0c;同时减少材料浪费及环境污染&#xff0c;广泛应用于汽车、航空航天等领域。 2. 结构组成 机械臂&…

DataX:一个开源的离线数据同步工具

DataX 是一个异构数据源离线同步&#xff08;ETL&#xff09;工具&#xff0c;实现了包括关系型数据库(MySQL、Oracle 等)、HDFS、Hive、ODPS、HBase、FTP 等各种异构数据源之间稳定高效的数据同步功能。它也是阿里云 DataWorks 数据集成功能的开源版本。 为了解决异构数据源同…

微软家各种copilot的AI产品:Github copilot、Microsoft copilot

背景 大家可能听到很多copilot&#xff0c;比如 Github Copilot&#xff0c;Microsoft Copilot、Microsoft 365 Copilot&#xff0c;有什么区别 Github Copilot&#xff1a;有网页版、有插件&#xff08;idea、vscode等的插件&#xff09;&#xff0c;都是面向于程序员的。Mi…

SpringMVC04所有注解按照使用位置划分| 按照使用层级划分(业务层、视图层、控制层)

目录 一、所有注解按照使用位置划分&#xff08;类、方法、参数&#xff09; 1. 类级别注解 2. 方法级别注解 3. 参数级别注解 4. 字段/返回值注解 二、按照使用层级划分&#xff08;业务层、视图层、控制层&#xff09; 1、控制层&#xff08;Controller Layer&#x…

std::chrono类的简单使用实例及分析

author: hjjdebug date: 2025年 05月 20日 星期二 14:36:17 CST descrip: std::chrono类的简单使用实例及分析 文章目录 1.实例代码:2. 代码分析:2.1 auto t1 std::chrono::high_resolution_clock::now();2.1.1 什么是 system_clock2.1.2 什么是 chrono::time_point?2.1.3 什…

电子电路仿真实验教学平台重磅上线!——深圳航天科技创新研究院倾力打造,助力高校教学数字化转型

在传统电子电路课堂中&#xff0c;实验室的灯光总与高昂的成本、拥挤的设备、反复的耗材损耗相伴&#xff0c;而教师不得不面对这样的现实&#xff1a;有限的硬件资源束缚着教学深度&#xff0c;不可逆的实验风险制约着创新探索&#xff0c;固化的时空场景阻碍着个性化学习。当…

面试真题 - 高并发场景下Nginx如何优化

Nginx是一款高性能的Web服务器和反向代理服务器&#xff0c;以其轻量级、高并发处理能力和稳定性闻名。在面对高并发场景时&#xff0c;合理的配置与优化策略至关重要&#xff0c;以确保服务的稳定性和响应速度。 以下是针对Nginx进行高并发优化的一些关键配置和策略&#xff…

算法与数据结构:质数、互质判定和裴蜀定理

文章目录 质数质数判定质数筛选质因数分解互质判定裴蜀定理 质数 首先回顾「质数」的定义&#xff1a;若一个正整数无法被除了 1 ​和它自身之外的任何自然数整除&#xff0c;则称该数为质数&#xff08;或素数&#xff09;&#xff0c;否则称该正整数为合数。 根据上述定义&…

代码随想录算法训练营第60期第四十二天打卡

大家好&#xff0c;今天还是继续我们的动态规划里面的背包问题&#xff0c;前面我们主要接触的是0-1背包和完全背包&#xff0c;其实这两个背包问题主要就是看看每一件物品我们是否有多件&#xff0c;如果每一件物品我们只能取一次的话那这样我们就是0-1背包&#xff0c;如果每…

第41天-Python+Qt四屏播放器开发指南

一、技术选型与工具准备 核心库: Pyqt5:Python标准GUI库,构建用户界面 os / sys:文件系统操作 开发环境: pip install pyqt5 最终效果与运行 import sys from PyQt5.QtWidgets import QVBoxLayout, QHBoxLayout # 添加缺失的布局管理器 from PyQt5.QtCore impor…