技術問答
技術文章
iT 徵才
Tag
聊天室
2024 鐵人賽
登入/註冊
問答
文章
Tag
邦友
鐵人賽
搜尋
2024 iThome 鐵人賽
DAY
0
0
佛心分享-IT 人自學之術
SASS/SCSS的認識與實作
系列 第
17
篇
Day17 函數 (function)
16th鐵人賽
yu_ting
2024-10-02 01:40:17
95 瀏覽
分享至
在 SASS/SCSS 中函數 (function) 是什麼 ?
是一個用來執行某些特定操作並返回結果的程式碼片段
與混合器(mixin)類似,最大的區別是函數只會返回一個值,而混合器則用來輸出一段樣式程式碼
根據傳入的參數進行計算或處理,並返回一個值供樣式表中的屬性使用
SASS 內建了一些強大的函數(例如色彩操作、數學運算等),允許開發者自定義自己的函數
優點
重複使用性高 : 函數可以被多次調用,減少重複程式碼,提升開發效率
提高可維護性:將複雜的邏輯封裝在函數中,減少樣式表的混亂,便於維護
靈活性強:可以處理複雜的計算和邏輯操作,並返回動態值
缺點
學習曲線:對初學者來說,函數的概念可能需要一些時間理解,特別是自定義函數
性能問題:過多的函數調用可能會增加樣式表的編譯
應用場景
色彩處理:使用函數調整顏色的亮度、飽和度、透明度等
計算佈局尺寸:通函數自動計算尺寸,根據不同的輸入值返回結果(例如計算比例佈局)
字串操作:在需要動態生成選擇器或屬性名時,函數可用來處理字串
動態樣式生成:基於變數或條件生成不同的樣式,保持樣式的靈活性
內建函數
a. 色彩 : 操作顏色值
調整亮度
改變透明度
lighten($color, $amount):使顏色變亮
darken($color, $amount):使顏色變暗
saturate($color, $amount):增加顏色的飽和度
b. 數學 : 進行數學計算
四捨五入
round($value):將數值四捨五入到最接近的整數
percentage($value):將一個小數轉換為百分比
c.字串 : 處理字串值
合併字串
quote($string):將字串加上引號
unquote($string):去掉字串的引號
d. 列表 : 操作 Sass 列表
獲取列表中的項目
nth($list, $n):獲取列表中第 n 項的值
length($list):返回列表的長度
自定義函數
開法者可以根據需要自定義函數,語法類似於其他程式語言中的函數
Sass 函數可以接受參數並返回計算結果
留言
追蹤
檢舉
上一篇
Day16 插值的例子
下一篇
Day18 函數例子
系列文
SASS/SCSS的認識與實作
共
30
篇
目錄
RSS系列文
訂閱系列文
0
人訂閱
26
Day26 模塊化 SASS 架構例子
27
Day27 SASS 相關的開發工具
28
Day28 自動編譯
29
Day29 SASS 生成主題
30
Day 30 深淺色主題實作
完整目錄
直播研討會
{{ item.subject }}
{{ item.channelVendor }}
{{ item.webinarstarted }}
|
{{ formatDate(item.duration) }}
直播中
立即報名
尚未有邦友留言
立即登入留言
iThome鐵人賽
參賽組數
1064
組
團體組數
40
組
累計文章數
22196
篇
完賽人數
602
人
看影片追技術
看更多
{{ item.subject }}
{{ item.channelVendor }}
|
{{ formatDate(item.duration) }}
直播中
熱門tag
看更多
15th鐵人賽
16th鐵人賽
13th鐵人賽
14th鐵人賽
12th鐵人賽
11th鐵人賽
鐵人賽
2019鐵人賽
javascript
2018鐵人賽
python
2017鐵人賽
windows
php
c#
windows server
linux
css
react
vue.js
熱門問題
Web Application 與Web Service 的差異
如何讓在中國的同事可以穩定的使用台灣總部的系統服務
administrators群組成員的管理員權限不見
AB兩點網路使用LTE數據機做連接
求救,erp 無法使用,ping封包 100% 丟失
電腦版Outlook 封存郵件無法包含有作標幟的郵件
JS 讀取EXCEL檔的日期字串如何轉換
fortigate 60E 配IP給無限AP問題
如何以php抓取html文件的特定元素,並且依照抓取順序填入頁碼
switch 指令的應用
熱門回答
如何讓在中國的同事可以穩定的使用台灣總部的系統服務
求救,erp 無法使用,ping封包 100% 丟失
administrators群組成員的管理員權限不見
AB兩點網路使用LTE數據機做連接
fortigate 60E 配IP給無限AP問題
熱門文章
卷 31:iThome 鐵人賽寫作攻略——新手必看指南
如何在Google Colab和Replit中請AI解說Python程式碼及相關天文觀念?
大總結 - Win11 是對企業和私人的大改版
Python Multiple line input
Python 字串string 方法,zfill() & f"{i:0xd}" &浮點數格式化
IT邦幫忙
×
標記使用者
輸入對方的帳號或暱稱
Loading
找不到結果。
標記
{{ result.label }}
{{ result.account }}