CSS 有史以來第一個(gè)變量—currentColor

CSS 顏色(第三版)規(guī)范中组砚,增加了很多顏色關(guān)鍵字窄坦,比如lightgoldenrodyellow等拴驮,不是很常用春瞬,但是我們還得到了一個(gè)特殊的關(guān)鍵字currentColor,他是從SVG那里借鑒來的套啤。這個(gè)關(guān)鍵字并沒有綁定到一個(gè)固定的顏色值宽气,而是一直被解析為color。實(shí)際上潜沦,這個(gè)特性讓它成為***CSS中有史以來的第一個(gè)變量萄涯。
比如我們想讓所有的水平分割線(所有的<hr>元素)自動(dòng)與文本的顏色保持一致。
用currentColor我們可以這樣寫:

hr {
    height: .5em;
    backgorund: currentColor;
}

上面代碼顯示的效果是0.5em 高度的背景顏色是當(dāng)前的標(biāo)簽所繼承的文字顏色
currentColor是 color 屬性的值唆鸡,具體意思是指:currentColor關(guān)鍵字的使用值是 color 屬性值的計(jì)算值涝影。如果currentColor關(guān)鍵字被應(yīng)用在 color 屬性自身,則相當(dāng)于是color: inherit
争占。
inherit:
可以用在任何CSS屬性中燃逻,這從w3cschool文檔中就已經(jīng)體現(xiàn)了,它總是綁定到父元素的計(jì)算值(對(duì)偽元素來說臂痕,則會(huì)取生成該偽元素的宿主元素)伯襟。舉例來說,要把表單元素的字體設(shè)定為與頁面的其他部分相同握童,你并不需要重復(fù)指定字體屬性姆怪,只需要利用inherit
我們可以結(jié)合CSS3 animation 來實(shí)現(xiàn)一個(gè)不斷改變的背景顏色:
HTML:

<h1>Using currentColor for fun and profit</h1>
<p>In pure CSS you can use <code>currentColor</code> wherever you migth use a normal color value. This maps to whatever the current value of color is.</p>
<p>Go ahead, stick <code>currentColor</code> in gradients and backgrounds. It’s already the default for text, borders, and drop shadows so you don’t even need to define current color there.</p>

<button>Foobar</button>

CSS:

/*||||||||||||||||||||||||||||||||||

Just change this color.             */

html {
  color: red;
  animation: color 30s linear infinite;
}

@keyframes color {
  33.3% { color: #0f0; }
  66.7% { color: #00f; }
}

/*||||||||||||||||||||||||||||||||||*/

body {
  font-family: sans-serif;
  margin: 2em;
  border-top: 2px solid;
  position: relative;
  padding: 1em;
}

body:before {
  content: "";
  position: absolute;
  display: block;
  top: 0;
  bottom: 0;
  left: 0;
  right: 0;
  opacity: .1;
  background-color: currentColor;
  background-image: linear-gradient(to bottom, currentColor, #fff);
}

p, h1 {
  color: black;
  margin-top: 0;
}

button {
  color: inherit;
  display: block;
  text-decoration: none;
  padding: .5em 1em;
  background: white;
  border: 2px solid;
  margin: 0 auto;
  border-radius: .5em;
  box-shadow: 2px 2px;
  font-weight: bold;
}

演示地址

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市稽揭,隨后出現(xiàn)的幾起案子俺附,更是在濱河造成了極大的恐慌,老刑警劉巖溪掀,帶你破解...
    沈念sama閱讀 211,743評(píng)論 6 492
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件事镣,死亡現(xiàn)場(chǎng)離奇詭異,居然都是意外死亡膨桥,警方通過查閱死者的電腦和手機(jī)蛮浑,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 90,296評(píng)論 3 385
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來只嚣,“玉大人,你說我怎么就攤上這事艺沼〔嵛瑁” “怎么了?”我有些...
    開封第一講書人閱讀 157,285評(píng)論 0 348
  • 文/不壞的土叔 我叫張陵障般,是天一觀的道長(zhǎng)调鲸。 經(jīng)常有香客問我,道長(zhǎng)挽荡,這世上最難降的妖魔是什么藐石? 我笑而不...
    開封第一講書人閱讀 56,485評(píng)論 1 283
  • 正文 為了忘掉前任,我火速辦了婚禮定拟,結(jié)果婚禮上于微,老公的妹妹穿的比我還像新娘。我一直安慰自己青自,他們只是感情好株依,可當(dāng)我...
    茶點(diǎn)故事閱讀 65,581評(píng)論 6 386
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著延窜,像睡著了一般恋腕。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上逆瑞,一...
    開封第一講書人閱讀 49,821評(píng)論 1 290
  • 那天荠藤,我揣著相機(jī)與錄音,去河邊找鬼获高。 笑死哈肖,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的谋减。 我是一名探鬼主播牡彻,決...
    沈念sama閱讀 38,960評(píng)論 3 408
  • 文/蒼蘭香墨 我猛地睜開眼,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了庄吼?” 一聲冷哼從身側(cè)響起缎除,我...
    開封第一講書人閱讀 37,719評(píng)論 0 266
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎总寻,沒想到半個(gè)月后器罐,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 44,186評(píng)論 1 303
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡渐行,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,516評(píng)論 2 327
  • 正文 我和宋清朗相戀三年轰坊,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片祟印。...
    茶點(diǎn)故事閱讀 38,650評(píng)論 1 340
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖蕴忆,靈堂內(nèi)的尸體忽然破棺而出颤芬,到底是詐尸還是另有隱情,我是刑警寧澤套鹅,帶...
    沈念sama閱讀 34,329評(píng)論 4 330
  • 正文 年R本政府宣布站蝠,位于F島的核電站,受9級(jí)特大地震影響卓鹿,放射性物質(zhì)發(fā)生泄漏菱魔。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,936評(píng)論 3 313
  • 文/蒙蒙 一吟孙、第九天 我趴在偏房一處隱蔽的房頂上張望澜倦。 院中可真熱鬧,春花似錦拔疚、人聲如沸肥隆。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,757評(píng)論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽栋艳。三九已至,卻和暖如春句各,著一層夾襖步出監(jiān)牢的瞬間吸占,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,991評(píng)論 1 266
  • 我被黑心中介騙來泰國(guó)打工凿宾, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留矾屯,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 46,370評(píng)論 2 360
  • 正文 我出身青樓初厚,卻偏偏與公主長(zhǎng)得像件蚕,于是被迫代替她去往敵國(guó)和親孙技。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 43,527評(píng)論 2 349

推薦閱讀更多精彩內(nèi)容

  • 學(xué)習(xí)CSS的最佳網(wǎng)站沒有之一 http://www.w3school.com.cn/tags/index.asp ...
    Amyyy_閱讀 1,033評(píng)論 0 1
  • 選擇qi:是表達(dá)式 標(biāo)簽選擇器 類選擇器 屬性選擇器 繼承屬性: color排作,font牵啦,text-align,li...
    wzhiq896閱讀 1,732評(píng)論 0 2
  • 選擇qi:是表達(dá)式 標(biāo)簽選擇器 類選擇器 屬性選擇器 繼承屬性: color妄痪,font哈雏,text-align,li...
    love2013閱讀 2,304評(píng)論 0 11
  • FreeCodeCamp - HTML5 and CSS 發(fā)現(xiàn)原來在另外一臺(tái)電腦學(xué) FreeCodeCamp 的時(shí)...
    付林恒閱讀 9,353評(píng)論 2 17
  • 盡量減少代碼重復(fù) 在軟件開發(fā)中衫生,保持代碼的DRY 和可維護(hù)性是最大的挑戰(zhàn)之一裳瘪,而這句話對(duì)CSS 也是適用的。在實(shí)踐...
    圖靈教育閱讀 1,197評(píng)論 0 14