CSS-自定義變量

使用背景:

一些常見的例子:
為風格統一而使用顏色變量
一致的組件屬性(布局,定位等)
避免代碼冗余
*更方便的從CSS向JS傳遞數據(例如媒體斷點)

為什么使用:

以下幾點是未來CSS屬性的簡短說明:
動態性,可以在運行時更改
可以方便的從JS中讀/寫
可繼承,可組合,同時具有作用域

定義:

定義
用這樣的方式來聲明一個變量:--variable-name: variable-value;(變量名是大小寫敏感的)。變量的值可以是顏色、字符串、多個值的組合等:
:root{
--base_color:#398bd0;
--bg_color:#4a4a4a;
}

為什么選擇兩根連詞線(--)表示變量?

為什么選擇兩根連詞線(--)表示變量?
$foo被 Sass 用掉了,
@foo被 Less 用掉了。
為了不產生沖突,官方的 CSS 變量就改用兩根連詞線了

用法:

.res_nav ul li:hover a{color:var(--base_color);}
.res_contact_btn a:hover{background:var(--base_color);}

作用域:

使用

:root
作用域來定義全局變量:

:root{ --global-var: 'global'; }

如果想讓某個變量只在部分元素/組件下可見,只需要在特定的元素下定義該變量:

<div class="block"> 
My block is 
<div class="block__highlight">awesome</div> 
</div>

/*css文件*/ .block
{ --block-font-size: 1rem; font-size: var(--block-font-size); }
.block__highlight
{ --block-highlight-font-size: 1.5rem; font-size: var(--block-highlight-font-size); }

媒體查詢也可以提供作用域:

@media screen and (min-width: 1025px) { 
:root { 
--screen-category: 'desktop';
} 
}    

下面一個例子來展示偽類下的作用域(例如,:hover):

style="width: 100%;" title="自定義變量,偽類作用域示例" src="http://codepen.io/mengjielee/embed/BxXqJP/?height=335&theme-id=0&default-tab=html,result&embed-version=2" frameborder="no" scrolling="no" width="320" height="335">

本文轉載于:猿2048→https://www.mk2048.com/blog/blog.php?id=hii1aaaa&title=CSS-自定義變量

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

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

相關文章

url存在寬字節跨站漏洞_利用WebSocket跨站劫持(CSWH)漏洞接管帳戶

在一次漏洞懸賞活動中&#xff0c;我發現了一個使用WebSocket連接的應用&#xff0c;所以我檢查了WebSocket URL&#xff0c;發現它很容易受到CSWH的攻擊(WebSocket跨站劫持)有關CSWH的更多詳細信息&#xff0c;可以訪問以下鏈接了解https://www.christian-schneider.net/Cross…

php 數組對比 unset,如何區分PHP中unset,array_splice的區別

1.使用的函數a.函數unset()unset ( mixed $var , mixed $... ? ) : voidunset()銷毀指定的變量。b.函數array_slice()array_splice(array,start,length,array)array表示數組。start表示刪除元素的開始位置。length表示被移除的元素個數&#xff0c;也是被返回數組的長度。(可…

MapReduce算法–二級排序

我們將繼續進行有關實現MapReduce算法的系列文章&#xff0c;該系列可在使用MapReduce進行數據密集型文本處理中找到。 本系列的其他文章&#xff1a; 使用MapReduce進行數據密集型文本處理 使用MapReduce進行數據密集型文本處理-本地聚合第二部分 使用Hadoop計算共現矩陣 …

Redis 字符串(String)

Redis 字符串(String) Redis 字符串數據類型的相關命令用于管理 redis 字符串值&#xff0c;基本語法如下&#xff1a; 語法 redis 127.0.0.1:6379> COMMAND KEY_NAME 實例 redis 127.0.0.1:6379> SET runoobkey redis OK redis 127.0.0.1:6379> GET runoobkey "…

前端基礎-CSS的各種選擇器的特點以及CSS的三大特性

一、 基本選擇器二、 后代選擇器、子元素選擇器三、 兄弟選擇器四、 交集選擇器與并集選擇器五、 序列選擇器六、 屬性選擇器七、 偽類選擇器八、 偽元素選擇器九、 CSS三大特性 一、 基本選擇器 1、id選擇器 #1、作用&#xff1a;根據指定的id名稱&#xff0c;在當前界面中找…

Php流式 大文件,如何使用PHP解析XML大文件

如果使用 PHP 解析 XML 的話&#xff0c;那么常見的選擇有如下幾種&#xff1a;DOM、SimpleXML、XMLReader。如果要解析 XML 大文件的話&#xff0c;那么首先要排除的是 DOM&#xff0c;因為使用 DOM 的話&#xff0c;需要把整個文件全部加載才能解析&#xff0c;效率堪憂&…

python 白盒測試_白盒測試教程 - 顏麗的個人空間 - OSCHINA - 中文開源技術交流社區...

總共貼了39節&#xff0c;后續還有很長&#xff0c;共122節&#xff0c;文章名為‘白盒測試教程’1、白盒測試概念2、測試覆蓋標準3、邏輯驅動測試4、基本路徑測試白盒測試概念1、白盒測試也稱結構測試或邏輯驅動測試&#xff0c;是一種測試用例設計方法&#xff0c;它從程序的…

Oracle 分析函數及常用函數

什么叫分析函數(Analytic function)&#xff1f; Oracle從8.1.6開始提供分析函數&#xff0c;分析函數用于計算基于組的某種聚合值&#xff0c;它和聚合函數的不同之處是 對于每個組返回多行&#xff0c;而聚合函數對于每個組只返回一行。 基本語法 function_name(arg1,arg2,..…

ScanTailor-ScanTailor 強大的多方位的滿足處理掃描圖片的需求

ScanTailor 強大的多方位的滿足處理掃描圖片的需求ScanTailor 能做什么&#xff1f;批量或單張或選擇區間旋轉圖片自動切割頁面&#xff0c;同時提供手動選項自動識別圖像歪斜角度&#xff0c;同時提供手動選項自動識別正文內容裁剪&#xff0c;同時提供手動選項設置正文上下左…

使用JavaCV進行手和手指檢測

這篇文章是Andrew Davison博士發布的有關自然用戶界面&#xff08;NUI&#xff09;系列的一部分&#xff0c;內容涉及使用JavaCV從網絡攝像頭視頻提要中檢測手。 注意&#xff1a;可以從http://fivedots.coe.psu.ac.th/~ad/jg/nui055/下載本章的所有源代碼。 第5章的彩色斑點檢…

oracle+trace參數設置,Oracle autotrace參數詳解

SQL> set autotrace traceonly explainSP2-0613: 無法驗證 PLAN_TABLE 格式或實體cuug每周五晚8點都有免費網絡課程&#xff0c;如需了解可點擊cuug官網。SP2-0611: 啟用EXPLAIN報告時出錯解決方法&#xff1a;1. 以SYS用戶登錄CONNECT / as SYSDBA ;1. 創建PLAN_TABL…

git提交代碼到碼云

日常代碼一般提交到github比較多&#xff0c;但我還是鐘愛馬爸爸&#xff0c;沒錯就是碼云。 碼云是中文版的代碼托管的網站&#xff0c;不存在打開網速問題&#xff0c;使用也蠻方便的&#xff0c;日常自己保存托管代碼已經足夠&#xff0c;平時使用git提交代碼到碼云是非常方…

不能裝載文檔控件。請在檢查瀏覽器的選項中檢查瀏覽器的安全設置_【2020年網絡安全宣傳周】如何正確設置瀏覽器...

李夏是一個公司的職員&#xff0c;一天晚上加班趕制文檔&#xff0c;由于要向客戶匯報產品情況&#xff0c;需要獲取大量網上信息&#xff0c;然而在制作中卻發現瀏覽器的網頁打不開了。第二天原計劃向客戶展示的材料未能完整匯總&#xff0c;客戶見面對接效果也打了折扣。在當…

矩形碰撞檢測和圓形碰撞檢測。

矩形碰撞檢測&#xff1a; <!DOCTYPE html><html lang"en"><head><meta charset"UTF-8"><title>Document</title><style type"text/css">body { margin: 0;}#wrap { margin: 50px auto; position: re…

MonogoDB 查詢小結

MonogoDB是一種NoSQL數據庫 優點: 1.數據的存儲以json的文檔進行存儲(面向文檔存儲) 2.聚合框架查詢速度快 3.高效存儲二進制大對象 缺點: 1.不支持事務 2.文件存儲空間占用過大 案例學習 例1:單個變量查詢(查找出制造商字段為“Porsche”的所有汽車的查詢) {"layout"…

用裝飾器設計模式裝飾

裝飾圖案是廣泛使用的結構圖案之一。 此模式在運行時動態更改對象的功能&#xff0c;而不會影響對象的現有功能。 簡而言之&#xff0c;此模式通過包裝將附加功能添加到對象。 問題陳述&#xff1a; 想像一下我們有一個比薩餅&#xff0c;該比薩餅已經用番茄和奶酪烤制的情況。…

linux 內存強度測試軟件,linux下的CPU、內存、IO、網絡的壓力測試工具與方法介紹...

使用工具stressCentos# yum -y install stressUbantu# apt-get install stress# stress --helpstress imposes certain types of compute stress on your systemUsage: stress [OPTION [ARG]] ...-?, --help show this help statement--version show version statement-v, --v…

vcpkg安裝_微軟牌包管理器vcpkg更新及路線圖計劃

蝎子vcpkg是一套跨平臺&#xff0c;開源的C/C庫管理器&#xff0c;今天的這篇文章是有關vcpkg主題的2020年4月博文更新。在這篇文章中&#xff0c;我們將分享有關vcpkg 2020.04發布版本的一些信息以及vcpkg的路線圖(roadmap)&#xff0c;我們會在這里持續地發布有關vcpkg的最新…

CSS 盒模型與box-sizing

一、盒模型 一個web頁面由許多html元素組成&#xff0c;而每一個html元素都可以表示為一個矩形的盒子&#xff0c;CSS盒模型正是描述這些矩形盒子的存在。 MDN的描述&#xff1a; When laying out a document, the browsers rendering engine represents each element as a r…

Java課程設計 購物車系統(個人博客) 201521123052 藍錦明

1. 團隊課程設計博客鏈接 課程設計團隊博客 2. 個人負責模塊或任務說明 &#xff08;1&#xff09;制作圖形菜單引導界面 &#xff08;2&#xff09;定義各獲取和輸出類函數 3. 自己的代碼提交記錄截圖 4. 自己負責模塊或任務詳細說明 import java.text.NumberFormat; public c…