偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

CSS支持 if / else 了

系統(tǒng) 瀏覽器
從 Chrome 137 開始,CSS 加入了一個新功能:內(nèi)聯(lián)條件函數(shù)??if()??。它可以讓你在樣式中直接寫判斷邏輯。這樣可以少用 ??@media?? 和 ??@supports??,讓樣式更集中、更好維護。

從 Chrome 137 開始,CSS 加入了一個新功能:內(nèi)聯(lián)條件函數(shù)if()。它可以讓你在樣式中直接寫判斷邏輯。這樣可以少用 @media 和 @supports,讓樣式更集中、更好維護。

什么是 if()?

if() 是一個 CSS 函數(shù)。它可以根據(jù)條件選擇不同的樣式值。用法和 JavaScript 里的 if...else 類似。

它支持三種條件:

  • media():媒體查詢,用來檢測屏幕大小、方向等。
  • supports():功能判斷,用來看瀏覽器是否支持某個 CSS 功能。
  • style():樣式值判斷,常配合 CSS 變量使用,用來判斷元素的狀態(tài)。

基本語法:

property: if(
  condition-1: value-1;
  condition-2: value-2;
  /* … */
  else: value-n);

其中 else 是可選的,用于指定默認(rèn)值。

用 if() 有三個優(yōu)點:

  • 更簡潔:邏輯和樣式寫在一起,不用分成很多塊。
  • 更直接style() 可以用元素自己的屬性,不用依賴父元素。
  • 更靈活:能配合變量、函數(shù)等新特性,寫出更動態(tài)的樣式。

應(yīng)用場景

內(nèi)聯(lián)媒體查詢

根據(jù)屏幕方向切換卡片布局:

.card-container {
  flex-direction: if(
    media(orientation: landscape): row;
    else: column);
}

橫屏?xí)r用橫向布局,豎屏?xí)r用縱向布局。

內(nèi)聯(lián)兼容查詢

根據(jù)瀏覽器是否支持 backdrop-filter 添加毛玻璃效果:

.modal {
  background: if(
    supports(backdrop-filter: blur(10px)):
      rgba(255, 255, 255, 0.6);
    else:
      #ffffff);
  backdrop-filter: if(
    supports(backdrop-filter: blur(10px)):
      blur(10px));
}

支持毛玻璃時用半透明背景,不支持時用白色。

基于狀態(tài)的樣式

根據(jù)主題模式切換文本顏色:

<div class="text" data-theme="dark">歡迎使用內(nèi)聯(lián) if()</div>
.text {
  --theme: attr(data-theme);
  color: if(
    style(--theme: dark): #f1f1f1;
    style(--theme: light): #222;
    else: #444);
}

深色主題時用淺文字,淺色主題時用深文字。

瀏覽器支持

圖片圖片


責(zé)任編輯:武曉燕 來源: 前端充電寶
相關(guān)推薦

2021-10-27 09:10:50

CSS 技巧else

2015-12-15 10:32:44

chromecss開發(fā)

2023-07-24 09:11:43

CSS滾動驅(qū)動動畫

2023-04-10 09:18:42

CSS前端

2020-11-23 09:37:22

Python開發(fā)函數(shù)

2021-12-17 15:05:55

CSSwhenelse

2011-02-24 10:23:46

FireFTP

2024-01-12 16:20:04

2021-05-17 14:57:23

策略模式代碼

2024-06-13 10:17:57

2020-06-04 09:18:52

CTOif-else代碼

2017-07-03 15:04:41

2023-06-12 09:08:47

CSS語法雙斜杠

2023-04-10 15:01:38

CSS開發(fā)

2021-08-23 13:25:25

Vue3CSS前端

2021-01-20 14:25:53

Vue3CSS前端

2023-06-02 07:30:24

If-else結(jié)構(gòu)流程控制

2024-09-23 09:20:02

calc-sizeCSS前端

2023-02-06 09:31:17

CSSJS 動態(tài)

2020-12-29 09:16:36

程序員對象開發(fā)
點贊
收藏

51CTO技術(shù)棧公眾號