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.pswp.cn/news/906431.shtml
繁體地址,請注明出處:http://hk.pswp.cn/news/906431.shtml
英文地址,請注明出處:http://en.pswp.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…