CSS3中鲜为人知但非常强大的 Clip-Path 属性

news2025/2/26 20:08:42

CSS3中鲜为人知但非常强大的 Clip-Path 属性

在CSS3中,clip-path属性可以让我们快速创建各种各样的不规则图形,而无需使用图片或者复杂的绘图工具。它可以帮助我们实现一些非常出色的视觉效果,但遗憾的是它并不是很常见。

clip-path属性可以接受多种不同的值,比如polygon()circle()ellipse()以及inset()等。

使用 polygon() 创建多边形

polygon()函数允许我们定义一个多边形的形状。我们只需要在函数中传入一系列的(x,y)坐标点即可。举个例子,下面的代码将创建一个正三角形:

div {
  width: 200px;
  height: 200px;
  background-color: #007bff;
  clip-path: polygon(50% 0, 100% 100%, 0 100%);
}

效果如下:

![正三角形][image_0]

我们可以继续增加坐标点的数量来创建更复杂的多边形图形。比如下面的代码将创建一个五角星:

div {  
  width: 100px; 
  height: 100px; 
  background-color: #6c757d;  
  clip-path: polygon(50% 0, 100% 38%, 82% 100%, 18% 100%, 0 38%);
}

效果如下:![五角星][image_1]

使用 circle() 和 ellipse() 创建圆形和椭圆

如果需要创建圆形或椭圆,我们可以使用circle()ellipse()函数。circle()函数需要一个半径值,而ellipse()函数需要两个半径值(分别代表x轴和y轴)。

下面是一个例子:

div {  
 width: 200px;  
 height: 200px;  
 background-color: #ffc107;  
 clip-path: circle(50% at 50% 50%);
}

效果如下:![圆形][image_2]``

div {  
 width: 300px;  
 height: 200px;  
 background-color: #17a2b8; 
 clip-path: ellipse(40% 60% at 50% 50%);

效果如下:![椭圆][image_3]

使用 inset() 创建内嵌图形inset()函数允许我们创建一个内嵌的矩形图形。它需要四个参数:top、right、bottom和left。这四个参数定义了矩形相对于其包含元素的位置和大小。

比如下面的代码将创建一个内嵌的圆角矩形:

div {  
 width: 300px;  
 height: 200px;  
 background-color: #28a745;  
 clip-path: inset(10% 20% 10% 20% round 20px);

效果如下:![内嵌圆角矩形][image_4]

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

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

相关文章

AI网络爬虫:用deepseek批量提取coze扣子的智能体数据

动态加载页面,返回json数据: 翻页规律: https://www.coze.cn/api/marketplace/product/list?entity_type1&keyword&page_num17&page_size24&sort_type1&source1&msToken8_renFdIfix-XVFJAqAj8F_gSPv1V5A8NX_iL2teO…

【Java学习笔记】异常处理

生活中我们在使用一些产品的时候,经常会碰到一些异常情况。例如,使用ATM机取钱的时,机器会突然出现故障导致无法完成正常的取钱业务,甚至吞卡;在乘坐地铁时,地铁出现异常无法按时启动和运行;使用…

windows pyenv-win:pyenv 下载过慢

先到官网下载指定版本的 exe 文件 Python Releases for Windows | Python.org 根据自己电脑的 下载 32 或者 64 下载完成后将 exe 放入 install_cache 再到 powershell 中执行安装指令 pyenv install 3.12.4

LLM漫谈(七)| 使用PyTorch从零构建LLM

LLM是最流行AI聊天机器人的核心基础,比如ChatGPT、Gemini、MetaAI、Mistral AI等。在每一个LLM,有个核心架构:Transformer。我们将首先根据著名的论文“Attention is all you need”-https://arxiv.org/abs/1706.03762 来构建Transformer架构…

天津媒体邀约,及媒体名单?

传媒如春雨,润物细无声,大家好,我是51媒体网胡老师。 媒体宣传加速季,100万补贴享不停,一手媒体资源,全国100城线下落地执行。详情请联系胡老师。 天津作为中国北方的重要城市,拥有丰富的媒体资…

OpenCV 车道检测

OpenCV 车道检测 前言模型分析车道检测相关链接 前言 如果要检测道路图像中的车道,方法之一是利用深度学习的语义分割技术。而在 OpenCV 中解决此问题可以使用边缘检测器。在本节中,我们将了解如何使用边缘检测和直线检测识别道路图像中的车道。 模型分…

C语言----自定义类型:联合和枚举

1.联合体 联合体的特点 像结构体一样,联合体也是一个或者多个成员构成的,这些成员可以是不同的类型 联合体的关键字:union 结构体的关键字:struct 枚举的关键字:enum 但是编译器只为最⼤的成员分配⾜够的内存空间…

如何查看公网IP?

什么是公网IP? 公网IP(Internet Protocol)是指分配给互联网上的计算机设备的唯一标识符。公网IP地址是由互联网服务提供商(ISP)分配给用户设备,使其可以与全球范围内的其他设备进行通信。公网IP地址通常采…

Internet Download Manager(IDM6.41)软件最新版下载及详细安装教程

​根据行业数据显示支持多款浏览器,包括IE,Safari,谷歌浏览器,火狐,MSN还有opera ,通过自带的添加浏览器功能能够支持所有浏览器。实际上 一键下载所选文件:当在浏览器中用鼠标选择多个链接时&…

Spring Boot轻松整合Minio实现文件上传下载功能

一、Linux 安装Minio 安装 在/root/xxkfz/soft目录下面创建文件minio文件夹,进入minio文件夹,并创建data目录; [rootxxkfz soft]# mkdir minio [rootxxkfz soft]# cd minio [rootxxkfz minio]# mkdir data执行如下命令进行下载 [rootxxkfz…

【漏洞复现】极限OA video_file.php 任意文件读取漏洞

免责声明: 本文内容旨在提供有关特定漏洞或安全漏洞的信息,以帮助用户更好地了解可能存在的风险。公布此类信息的目的在于促进网络安全意识和技术进步,并非出于任何恶意目的。阅读者应该明白,在利用本文提到的漏洞信息或进行相关测…

在 Mac 上恢复已删除的文件夹

“嗨,我刚刚运行了重复文件查找器应用程序 Gemini 来扫描我的 Mac 以清除重复文件。它找到了很多重复的文件和文件夹,只需单击一下,它就可以帮助我删除重复的文件/文件夹。但我认为它可能会删除一些有用的重复文件。我打开垃圾箱,…

Docker环境离线安装

Docker环境离线安装 下载下列.deb包 sudo *.deb

CFD笔记

CFD 定常流动与非定常流动 定常流动:流体流动过程中各物理量均与时间无关; 非定常流动:流体流动过程中某个或某些物理量与时间有关. 运动黏度 运动粘度定义: v μ ρ v \frac{\mu}{\rho} vρμ​,其中 μ \mu μ​表示粘度…

成为前端开发负责人之前,你需要具备8个能力

自己开发前端和带领团队开发前端,基本是两码事,有些小伙伴个人能力很强,给他一个团队,他就抓瞎了,结果就变成了一人在战斗了,贝格前端工场结合多年经验,分析一下成为前端负责人要具备啥能力。 …

刷代码随想录有感(109):动态规划——01背包问题|一和零

题干&#xff1a; 代码 : class Solution { public:int findMaxForm(vector<string>& strs, int m, int n) {vector<vector<int>>dp(m 1, vector<int>(n 1, 0));dp[0][0] 0;for(string i : strs){int oneNum 0;int zeroNum 0;for(char c : i…

SolidWorks软件天津代理商:官方授权亿达四方,企业的信赖之选

在快速发展的制造业领域&#xff0c;设计与创新是推动企业持续前进的核心动力。作为世界领先的三维机械设计解决方案&#xff0c;SolidWorks以其强大的功能、直观的操作界面以及高效的协作能力&#xff0c;成为众多天津企业加速产品开发周期、提升市场竞争力的首选工具。而在天…

C语言 | Leetcode C语言题解之第160题相交链表

题目&#xff1a; 题解&#xff1a; struct ListNode *getIntersectionNode(struct ListNode *headA, struct ListNode *headB) {if (headA NULL || headB NULL) {return NULL;}struct ListNode *pA headA, *pB headB;while (pA ! pB) {pA pA NULL ? headB : pA->ne…

交易盈利秘诀分享

在交易的过程中&#xff0c;大多数投资者容易被每天纷繁变化的行情所迷惑&#xff0c;看不清交易的本质&#xff0c;他们每天追求确定性&#xff0c;追求暴利&#xff0c;追求传说中的圣杯&#xff0c;然后&#xff0c;迷失在交易利益的得失之中&#xff0c;无法悟透交易的准则…

为微信小程序项目添加eslint

背景 在使用vscode开发微信小程序的过程中&#xff0c;修改js的时候发现没有报错提示&#xff0c;让我很不习惯&#xff0c;所以想为微信小程序项目添加eslint配置 编码实战 为微信小程序配置ESLint可以遵循以下步骤&#xff1a; 安装ESLint及其相关插件 首先&#xff0c;…