CSS3 漸變、陰影和遮罩的使用

全文目錄:

    • 開篇語
      • **前言**
      • **1. CSS3 漸變 (Gradient)**
        • **1.1 線性漸變 (linear-gradient)**
        • **1.2 徑向漸變 (radial-gradient)**
      • **2. CSS3 陰影 (Shadow)**
        • **2.1 盒子陰影 (box-shadow)**
        • **2.2 文本陰影 (text-shadow)**
      • **3. CSS3 遮罩 (Mask)**
        • **3.1 基本遮罩 (mask-image)**
        • **3.2 遮罩其他屬性**
        • **3.3 支持的瀏覽器和前綴**
      • **總結**
    • 文末

開篇語

哈嘍,各位小伙伴們,你們好呀,我是喵手。運營社區:C站/掘金/騰訊云/阿里云/華為云/51CTO;歡迎大家常來逛逛

??今天我要給大家分享一些自己日常學習到的一些知識點,并以文字的形式跟大家一起交流,互相學習,一個人雖可以走的更快,但一群人可以走的更遠。

??我是一名后端開發愛好者,工作日常接觸到最多的就是Java語言啦,所以我都盡量抽業余時間把自己所學到所會的,通過文章的形式進行輸出,希望以這種方式幫助到更多的初學者或者想入門的小伙伴們,同時也能對自己的技術進行沉淀,加以復盤,查缺補漏。

小伙伴們在批閱的過程中,如果覺得文章不錯,歡迎點贊、收藏、關注哦。三連即是對作者我寫作道路上最好的鼓勵與支持!

前言

CSS3 提供了豐富的視覺效果,包括漸變(gradient)、陰影(shadow)和遮罩(mask)等功能,可以極大地增強網頁的視覺表現力。在現代Web設計中,這些技術被廣泛應用來實現高質量的用戶界面。

1. CSS3 漸變 (Gradient)

漸變是指顏色在一段區域內逐漸變化,通常用于背景、按鈕等元素的裝飾。CSS3 支持線性漸變(linear-gradient)和徑向漸變(radial-gradient)兩種常見的漸變方式。

1.1 線性漸變 (linear-gradient)

線性漸變從一個方向上漸變顏色,可以指定漸變的角度或者方向。

基本語法

background: linear-gradient(direction, color1, color2, ...);
  • direction:漸變的方向,可以是角度或方向關鍵詞(如to leftto bottom等)。
  • color1, color2:漸變的顏色,可以指定多個顏色。

例子

/* 從上到下的線性漸變 */
background: linear-gradient(to bottom, #ff7e5f, #feb47b);/* 從左上角到右下角的線性漸變 */
background: linear-gradient(45deg, #ff7e5f, #feb47b);/* 多個顏色的漸變 */
background: linear-gradient(to right, #ff7e5f, #feb47b, #6a82fb);
1.2 徑向漸變 (radial-gradient)

徑向漸變是從中心向外逐漸變化的顏色。

基本語法

background: radial-gradient(shape size at position, color1, color2, ...);
  • shape:漸變的形狀,可以是circle(圓形)或ellipse(橢圓形)。
  • size:定義漸變的大小,如closest-sidefarthest-corner等。
  • position:漸變的起始位置(默認為中心center)。
  • color1, color2:漸變的顏色。

例子

/* 從中心向外的圓形徑向漸變 */
background: radial-gradient(circle, #ff7e5f, #feb47b);/* 從頂部左側的橢圓形漸變 */
background: radial-gradient(ellipse at top left, #ff7e5f, #feb47b);

2. CSS3 陰影 (Shadow)

陰影效果可以讓元素在視覺上浮動,增加深度感。CSS3 提供了 box-shadow(盒子陰影)和 text-shadow(文本陰影)兩種陰影效果。

2.1 盒子陰影 (box-shadow)

box-shadow 屬性為元素添加陰影效果。

基本語法

box-shadow: h-offset v-offset blur-radius spread-radius color inset;
  • h-offset:陰影水平偏移(正值表示向右偏移,負值表示向左偏移)。
  • v-offset:陰影垂直偏移(正值表示向下偏移,負值表示向上偏移)。
  • blur-radius:陰影的模糊半徑,值越大陰影越模糊。
  • spread-radius:陰影的擴展半徑,值為正時陰影會擴展,值為負時陰影會收縮。
  • color:陰影的顏色,可以是任何合法的顏色值。
  • inset:如果使用inset,陰影會被繪制在元素的內部,而不是外部。

例子

/* 簡單的陰影 */
box-shadow: 10px 10px 15px rgba(0, 0, 0, 0.3);/* 多重陰影 */
box-shadow: 5px 5px 10px rgba(0, 0, 0, 0.2), -5px -5px 10px rgba(0, 0, 0, 0.2);/* 內陰影 */
box-shadow: inset 0 0 10px rgba(0, 0, 0, 0.5);
2.2 文本陰影 (text-shadow)

text-shadow 屬性為文本添加陰影效果。

基本語法

text-shadow: h-offset v-offset blur-radius color;
  • h-offset:陰影的水平偏移。
  • v-offset:陰影的垂直偏移。
  • blur-radius:陰影的模糊半徑。
  • color:陰影的顏色。

例子

/* 簡單文本陰影 */
text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3);/* 多重文本陰影 */
text-shadow: 2px 2px 5px rgba(0, 0, 0, 0.3), -2px -2px 5px rgba(255, 255, 255, 0.3);

3. CSS3 遮罩 (Mask)

遮罩允許你控制元素的透明度、形狀和漸變,從而創建復雜的視覺效果。CSS3 的 mask 屬性可以通過圖片、漸變等方式創建遮罩。

3.1 基本遮罩 (mask-image)

mask-image 屬性指定用作遮罩的圖片或漸變。

基本語法

mask-image: url('mask.png');
  • url('mask.png'):指定一個圖像作為遮罩。圖像中的透明部分會顯示背景,而不透明部分會隱藏。

例子

/* 使用圖片遮罩 */
.element {mask-image: url('mask.png');-webkit-mask-image: url('mask.png'); /* 兼容舊版瀏覽器 */
}/* 使用漸變遮罩 */
.element {mask-image: linear-gradient(to bottom, rgba(0, 0, 0, 0), rgba(0, 0, 0, 1));
}
3.2 遮罩其他屬性
  • mask-size:設置遮罩圖片的大小。
  • mask-repeat:控制遮罩圖片是否平鋪。
  • mask-position:設置遮罩圖片的位置。

例子

/* 使用遮罩和漸變結合 */
.element {mask-image: radial-gradient(circle, rgba(0, 0, 0, 1) 40%, rgba(0, 0, 0, 0) 70%);-webkit-mask-image: radial-gradient(circle, rgba(0, 0, 0, 1) 40%, rgba(0, 0, 0, 0) 70%);
}
3.3 支持的瀏覽器和前綴

mask-image 和其他相關屬性在不同的瀏覽器中有不同的支持情況。為了確保兼容性,可能需要使用 -webkit- 前綴。


總結

  • 漸變:CSS3 漸變是通過 linear-gradientradial-gradient 屬性來創建的,支持線性和徑向漸變。
  • 陰影:通過 box-shadowtext-shadow 可以給元素或文本添加陰影效果。
  • 遮罩:CSS3 的 mask 屬性允許通過圖像或漸變來為元素應用遮罩效果。

這些CSS3特性可以大大增強網頁的視覺效果,使得設計更加現代化和富有動感。使用這些效果時,確保考慮到兼容性和性能,尤其是在移動設備和低性能設備上。

… …

文末

好啦,以上就是我這期的全部內容,如果有任何疑問,歡迎下方留言哦,咱們下期見。

… …

學習不分先后,知識不分多少;事無巨細,當以虛心求教;三人行,必有我師焉!!!

wished for you successed !!!


??若喜歡我,就請關注我叭。

??若對您有用,就請點贊叭。
??若有疑問,就請評論留言告訴我叭。


版權聲明:本文由作者原創,轉載請注明出處,謝謝支持!

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/bicheng/83324.shtml
繁體地址,請注明出處:http://hk.pswp.cn/bicheng/83324.shtml
英文地址,請注明出處:http://en.pswp.cn/bicheng/83324.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

[Linux]虛擬地址到物理地址的轉化

[Linux]虛擬地址到物理地址的轉化 水墨不寫bug 文章目錄 一、再次認識地址空間二、頁表1、頁表的結構設計2、頁表節省了空間,省在哪里?3、頁表的物理實現 一、再次認識地址空間 OS和磁盤交互的內存基本單位是4KB,這4KB通常被稱為內存塊。OS對…

Kubernetes(K8s)核心架構解析與實用命令大全

在容器化技術席卷全球的今天,Kubernetes(簡稱K8s,以“8”代替“ubernete”八個字母)已成為云原生應用部署和管理的核心基礎設施。作為Google基于內部Borg系統開源打造的容器編排引擎,K8s不僅解決了大規模容器管理的難題…

基于微信小程序的scratch學習系統

博主介紹:java高級開發,從事互聯網行業六年,熟悉各種主流語言,精通java、python、php、爬蟲、web開發,已經做了六年的畢業設計程序開發,開發過上千套畢業設計程序,沒有什么華麗的語言&#xff0…

postgresql 流復制中指定同步的用戶

postgresql 流復制中指定同步的用戶 在創建postgresql流復制的過程中,可以指定用戶名。 主庫pg_hba.conf配置 vi $PGDATA/pg_hba.conf host replication repl 192.168.56.12/32 md5 host all all 0.0.0.0/0 md5主庫創建同步的用戶 # 主庫創建 replicator 流復制…

基于springboot的運動員健康管理系統

博主介紹:java高級開發,從事互聯網行業六年,熟悉各種主流語言,精通java、python、php、爬蟲、web開發,已經做了六年的畢業設計程序開發,開發過上千套畢業設計程序,沒有什么華麗的語言&#xff0…

工具識別系統Python+深度學習+人工智能+卷積神經網絡算法+TensorFlow+圖像識別

一、介紹 工具識別系統,使用Python作為主要編程語言,基于TensorFlow搭建卷積神經網絡算法,通過收集了8種常見的日常工具圖片(“汽油罐(Gasoline Can)”, “錘子(Hammer)”, “鉗子&…

2024 CKA模擬系統制作 | Step-By-Step | 8、題目搭建-創建 Ingress

目錄 ??????免費獲取題庫配套 CKA_v1.31_模擬系統 一、題目 二、核心考點 Ingress 資源定義 Ingress Controller 依賴 服務暴露驗證 網絡層次關系 三、搭建模擬環境 1.創建命名空間 2.安裝ingress ingress-nginx-controller 3.創建hello.yaml并部署 四、總結 …

關于uv 工具的使用總結(uv,conda,pip什么關系)

最近要開發MCP 項目,uv工具使用是官方推薦的方式,逐要了解這個uv工具。整體理解如下: 一.uv工具的基本情況 UV 是一個由 Rust 編寫的現代化 Python 包管理工具,旨在通過極速性能和一體化功能替代傳統工具(如 pip、vi…

嵌入式學習筆記 - 新版Keil軟件模擬時鐘Xtal灰色不可更改的問題

在新版Keil軟件中,模擬時鐘無法修改XTAL頻率,默認只能使用12MHz時鐘。?這是因為Keil MDK從5.36版本開始,參數配置界面不再支持修改系統XTAL頻率,XTAL選項變為灰色,無法修改。這會導致在軟件仿真時出現時間錯誤的問題&…

Spring AI Image Model、TTS,RAG

文章目錄 Spring AI Alibaba聊天模型圖像模型Image Model API接口及相關類實現生成圖像 語音模型Text-to-Speech API概述實現文本轉語音 實現RAG向量化RAGRAG工作流程概述實現基本 RAG 流程 Spring AI Alibaba Spring AI Alibaba實現了與阿里云通義模型的完整適配,…

Java進階---JVM

JVM概述 JVM作用: 負責將字節碼翻譯為機器碼,管理運行時內存 JVM整體組成部分: 類加載系統(ClasLoader):負責將硬盤上的字節碼文件加載到內存中 運行時數據區(RuntimeData Area):負責存儲運行時各種數據 執行引擎(Ex…

數據類型檢測有哪些方式?

typeof 其中數組 對象 null都會判斷為Object,其他正確 typeof 2 // number typeof true //bolean typeof str //string typeof [] //Object typeof function (){} // function typeof {} //object typeof undefined //undefined typeof null // nullinstanceof 判斷…

NodeJS全棧開發面試題講解——P6安全與鑒權

? 6.1 如何防止 SQL 注入 / XSS / CSRF? 面試官您好,Web 安全三大經典問題分別從不同層面入手: 🔸 SQL 注入(Server端) 原理:惡意用戶將 SQL 注入查詢語句拼接,導致數據泄露或破壞…

npm error Cannot find module ‘negotiator‘ 的處理

本想運行npm create vuelatest,但提示: npm error code MODULE_NOT_FOUND npm error Cannot find module negotiator npm error Require stack: npm error - C:\Users\Administrator\AppData\Roaming\nvm\v18.16.1\node_modules\npm\node_modules\tuf-j…

Python爬蟲:AutoScraper 庫詳細使用大全(一個智能、自動、輕量級的網絡爬蟲)

更多內容請見: 爬蟲和逆向教程-專欄介紹和目錄 文章目錄 一、AutoScraper概述1.1 AutoScraper介紹1.2 安裝1.3 注意事項二、基本使用方法2.1 創建 AutoScraper 實例2.2 訓練模型2.3 保存和加載模型2.4 數據提取方法2.5 自定義規則三、高級功能3.1 多規則抓取3.2 分頁抓取3.3 代…

【Netty系列】解決TCP粘包和拆包:LengthFieldBasedFrameDecoder

目錄 如何使用? 1. 示例代碼(基于Netty) 2. 關鍵參數解釋 3. 協議格式示例 4. 常見配置場景 場景1:長度字段包含自身 場景2:長度字段在消息中間 5. 注意事項 舉個例子 完整示例:客戶端與服務端交互…

哈爾濱工業大學提出ADSUNet—紅外暗弱小目標鄰幀檢測新框架

ADSUNet: Accumulation-Difference-Based Siamese U-Net for inter-frame Infrared Dim and Small Target Detection 作者單位:哈爾濱工業大學空間光學工程研究中心 引用: Liuwei Zhang, Yuyang Xi, Zhipeng Wang, Wang Zhang, Fanjiao Tan, Qingyu Hou, ADSUNet: A…

Linux開發追蹤(IMX6ULL篇_第一部分)

前言 參數:cortex-A7 698Mhz flash 8GB RAM 512M DDR3 2個100M網口 單核 初期: 一、安裝完虛擬機之后,第一步先設置文件之間可以相互拷貝復制,以及通過CRT連接到虛擬機等 折磨死人了啊啊啊啊啊啊 1、關于SSH怎么安裝…

【萌筆趣棋】網頁五子棋項目測試報告

目錄 一.項目介紹 (一)項目簡介 (二)功能介紹 (三)頁面展示 1.注冊頁面 2.登錄頁面 3.游戲大廳頁面 4.游戲房間頁面(對戰) 二.功能測試 (一)出現的…

知識圖譜增強的大型語言模型編輯

https://arxiv.org/pdf/2402.13593 摘要 大型語言模型(LLM)是推進自然語言處理(NLP)任務的關鍵,但其效率受到不準確和過時知識的阻礙。模型編輯是解決這些挑戰的一個有前途的解決方案。然而,現有的編輯方法…