好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁(yè) > 知識(shí)庫(kù) > 詳解利用css3的var()實(shí)現(xiàn)運(yùn)行時(shí)改變scss的變量值

詳解利用css3的var()實(shí)現(xiàn)運(yùn)行時(shí)改變scss的變量值

熱門(mén)標(biāo)簽:威力最大的電銷(xiāo)機(jī)器人 電銷(xiāo)外呼系統(tǒng)是違法的嗎 旅游地圖標(biāo)注線(xiàn)路 廣西房產(chǎn)智能外呼系統(tǒng)推薦 漯河外呼調(diào)研線(xiàn)路 電銷(xiāo)專(zhuān)用外呼線(xiàn)路 地圖標(biāo)注位置怎么弄圖 電話(huà)機(jī)器人鑰匙扣 400電話(huà)唐山辦理

var()介紹與使用

詳情(MDN) IE無(wú)效,其余主流瀏覽器有效

var()使用

只能在{}內(nèi)聲明,作用范圍由{}的選擇器決定

<!-- 聲明 -->
body{
  --name:value;//body內(nèi)有效
}


<!-- 使用 -->
.test{
  attr: var(--name,defaultValue) //當(dāng)--name不存在時(shí),使用defaultValue
  
  var(--name):#369;//錯(cuò)誤使用方式
}

CSS中原生的變量定義語(yǔ)法是:–*,變量使用語(yǔ)法是:var(–*),其中*表示我們的變量名稱(chēng)。

但是,不能包含$,[,^,(,%等字符,普通字符局限在只要是“數(shù)字[0-9]”“字母[a-zA-Z]”“下劃線(xiàn)_”和“短橫線(xiàn)-”這些組合,但是可以是中文,日文或者韓文。

運(yùn)行時(shí)改變scss變量值

這個(gè)方法并不是能直接改變scsss變量的值,但是能做到一樣的效果,對(duì)于需要一個(gè)變量控制多個(gè)屬性的更為有效簡(jiǎn)潔
單變量控制單條屬性的就沒(méi)必要用了,這方法就是修改style屬性而已,單對(duì)單和你之間在style寫(xiě)那條屬性是一樣的

原理(English)

簡(jiǎn)單來(lái)說(shuō)就是將scss的變量交由css變量控制

$colors: (
  primary: #FFBB00,
  secondary: #0969A2
);

Selector1{
  @each $name, $color in $colors {
    --color-#{$name}: $color;
  }
}

<!-- Selector1的生成效果 -->
:root {
  --color-primary: #FFBB00;
  --color-secondary: #0969A2;
}


<!-- 使用方式一  直接使用css變量 -->
Selector{
  color:var(--color-primary);
}

<!-- 使用方式二 利用scss的函數(shù),以符合scss語(yǔ)法 推薦 -->  
@function color($color-name) {
  @return var(--color-#{$color-name});
}

body { 
  color: color(primary); //使用
}

<!-- body生成效果 -->
body { 
  color: var(--color-primary); //這樣就可以被js設(shè)置了
}

js設(shè)置css變量,即設(shè)置運(yùn)行scss變量

domObject.style.setProperty(name,value);//name為css變量名 e.g: --color-primary

至此完成了scss的運(yùn)行時(shí)改變變量值,具體運(yùn)用情景我也不太清楚,只是我遇到了。

我的運(yùn)用情景:

自定義組件需要暴露出一些樣式屬性給使用者 自由調(diào)整 ,類(lèi)似主題,而我又不想用字符串拼接的方式去完成,太浪費(fèi)了,每次改完一個(gè)值都得把整個(gè)style給重寫(xiě)一遍,而且這涉及到了頻繁修改dom不符合vue的思想,而且直接用css寫(xiě)太繁瑣了。

所以我采用scss來(lái)寫(xiě)樣式,scss嵌套真好用,less的不支持屬性再嵌套,用得很不爽,沒(méi)scss簡(jiǎn)潔。
由于scss是預(yù)編譯的,無(wú)法在運(yùn)行時(shí)改變變量值,而我又需要去改變,所以去google了,得到一個(gè)滿(mǎn)意的解決方案 -> 原理(English)

特別注意

在單文件組件(.vue)中若是使用了scoped 那么:root、:body等選擇器的效果并不會(huì)如同你所預(yù)期的

[data-v-1374924e]:root {
  --test:100px;
}

像這種的,變量–test 根本找不到,理由是并沒(méi)有這個(gè)root,vue組件scoped的特性,只在本組件有效,但組件又沒(méi)有完整的document,即組件內(nèi)部沒(méi)有root

所以在vue文件中,仔細(xì)思考css變量聲明的選擇器范圍,避免變量無(wú)效

到此這篇關(guān)于詳解利用css3的var()實(shí)現(xiàn)運(yùn)行時(shí)改變scss的變量值的文章就介紹到這了,更多相關(guān)css3改變scss的變量值內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章,希望大家以后多多支持腳本之家!

標(biāo)簽:銅陵 焦作 湖北 湘西 欽州 試駕邀約 無(wú)錫 綏化

巨人網(wǎng)絡(luò)通訊聲明:本文標(biāo)題《詳解利用css3的var()實(shí)現(xiàn)運(yùn)行時(shí)改變scss的變量值》,本文關(guān)鍵詞  詳解,利用,css3,的,var,實(shí)現(xiàn),;如發(fā)現(xiàn)本文內(nèi)容存在版權(quán)問(wèn)題,煩請(qǐng)?zhí)峁┫嚓P(guān)信息告之我們,我們將及時(shí)溝通與處理。本站內(nèi)容系統(tǒng)采集于網(wǎng)絡(luò),涉及言論、版權(quán)與本站無(wú)關(guān)。
  • 相關(guān)文章
  • 下面列出與本文章《詳解利用css3的var()實(shí)現(xiàn)運(yùn)行時(shí)改變scss的變量值》相關(guān)的同類(lèi)信息!
  • 本頁(yè)收集關(guān)于詳解利用css3的var()實(shí)現(xiàn)運(yùn)行時(shí)改變scss的變量值的相關(guān)信息資訊供網(wǎng)民參考!
  • 推薦文章
    主站蜘蛛池模板: 国产在线观看不卡免费高清 | 大宁县| 欲妄的最新章节| 欧美精品国产精品浪潮Av| 香蕉国产成版人视频在线观看| 深度拳脚视频video| 8x8ⅹ人成视频免费入口| 国产女人久久久毛片一级毛片| 办公室高H荡肉呻吟公交车视频 | 美女被到爽视频网站| 年轻的老师6免费观看| 免费看成人片| 56prom精品视频在线播放| 欧美一区二区三区久久久久久久久| 好紧好湿好涨夹断bl| 增城市| 亚洲高清一区二区三区| 午夜十二点免费看全剧| 英语课代表水真多视频免费| 花滢滢与镇国公h含苞待放| 人成午夜视频| 小乌酱黑白双丝脚交足在线观看 | 丝袜女仆被震蛋折磨调教| 高h各种场合全肉| yin荡护士长H肉承欲欢| 欧美黑人黄色片| www爱射网站avcom| 国产网红主播精品一区| 白丝洗澡裸体被?羞羞网站| 床戏超多超欲的电影| 欧美日韩综合| 娇妻玩3p被两个男人伺候 | 欧美性videossex柔术| 欧美图片一区| 在线亚洲欧洲国产综合444| 丝袜+亚洲+另类+欧美+变态| 一级做a爰片| 老赵抱着陈婷的乳在厨| 天天干天天曰| 麻豆天天做天天爱爽a区| 国产?欧美?日韩|