成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

2024年CSS持續(xù)活躍,年終大盤點(diǎn)!

開發(fā) 前端
在前端三大件(HTML、CSS、JavaScript)中, CSS 始終是更新最為頻繁的那個。每年瀏覽器都會陸續(xù)支持眾多全新的 CSS 功能,本文將聚焦于 2024 年那些不可錯過的 CSS 新功能,帶你一覽CSS領(lǐng)域的最新進(jìn)展!

在前端三大件(HTML、CSS、JavaScript)中, CSS 始終是更新最為頻繁的那個。每年瀏覽器都會陸續(xù)支持眾多全新的 CSS 功能,本文將聚焦于 2024 年那些不可錯過的 CSS 新功能,帶你一覽CSS領(lǐng)域的最新進(jìn)展!

交互特性

自定義滾動條

從 Chrome 121 開始,可以使用 scrollbar-width 和 scrollbar-color 屬性自定義滾動條的寬度和顏色。

.scroller {
  scrollbar-color: red green;
  scrollbar-width: 18%;
}

圖片圖片

跨文檔視圖過渡

Chrome 在 2023 年率先推出同文檔視圖過渡,2024 年在 Chrome 126 中進(jìn)一步支持跨文檔視圖過渡,允許在兩個獨(dú)立文檔之間進(jìn)行平滑過渡。

@view-transition {
  navigation: auto;
}

圖片圖片

滾動驅(qū)動動畫

Chrome 115 開始支持滾動驅(qū)動動畫,與滾動位置關(guān)聯(lián),實(shí)現(xiàn)元素在滾動時的動態(tài)效果。

.timeline {
  position: relative;
  display: flex;
  gap: var(--gap);
  overflow-x: scroll;
  scroll-snap-type: x mandatory;
  width: 100%;
  padding-inline: calc((100vw - var(--item-size)) / 2);
}

.timeline article {
  scroll-snap-align: center;
  scroll-snap-stop: always;
  animation: reveal linear both;
  animation-timeline: view(inline);
}

@keyframes reveal {
  0%,
  100% {
    translate: 0 -25%;
    scale: 0.7;
    opacity: 0.2;
  }
  50% {
    scale: 1;
    translate: 0;
    opacity: 1;
  }
}

圖片圖片

滾動捕捉事件

新增 scrollsnapchange 和 scrollsnapchanging 事件,使?jié)L動捕捉過程中的關(guān)鍵時刻可見且可響應(yīng),結(jié)合使用可創(chuàng)建無縫的滾動選擇體驗(yàn)。

scroller.addEventListener('scrollsnapchange', event => {
  console.log(event.snapTargetBlock);
  console.log(event.snapTargetInline);
})

scroller.onscrollsnapchange = event => {
  console.log(event.snapTargetBlock);
  console.log(event.snapTargetInline);
}

圖片圖片

組件

錨點(diǎn)定位

CSS錨點(diǎn)定位允許開發(fā)者以一種聲明式的方式創(chuàng)建元素之間的定位關(guān)系,特別適用于需要層級化布局的場景,如菜單、工具提示、下拉框、設(shè)置對話框等。

/* 定義按鈕為錨點(diǎn) */
.button-anchor {
  anchor-name: --menu-anchor;
}

/* 菜單定位到按鈕的正上方 */
.menu {
  position: absolute;
  position-anchor: --menu-anchor;
  position-area: block-start;
}

圖片圖片

動畫高度自適應(yīng)

從 Chrome 129 開始,可以使用 interpolate-size 屬性或 calc-size() 函數(shù)實(shí)現(xiàn)從固定長度到自適應(yīng)尺寸關(guān)鍵字的平滑過渡和動畫效果,讓尺寸變化動畫變得流暢自然。

:root {
    interpolate-size: allow-keywords;
}

圖片圖片

字段大小自適應(yīng)

通過field-sizing: content; 能夠創(chuàng)建自動根據(jù)內(nèi)容調(diào)整大小的輸入字段,告別了手動預(yù)估和 JavaScript 動態(tài)調(diào)整 Form 表單尺寸的時代。

input, textarea, select, {
  field-sizing: content;
}

這個屬性會使文本區(qū)域、下拉框和輸入框等元素自動根據(jù)其內(nèi)容調(diào)整大小,無論字體、字號、語言或書寫模式如何,都能輕松實(shí)現(xiàn)自適應(yīng)效果。

互斥手風(fēng)琴

通過為<details>元素添加name屬性,具有相同 name 值的多個 <details> 元素形成一個語義組,打開其中一個時,之前打開的會自動關(guān)閉。

<details name="hello-world">
  <summary>前端充電寶</summary>
  <p>...</p>
</details>
<details name="hello-world">
  <summary>充電寶</summary>
  <p>...</p>
</details>
<details name="hello-world">
  <summary>前端</summary>
  <p>...</p>
</details>

可樣式化的 <details> 元素

從 Chrome 131 開始,可以使用 display 屬性和 ::details-content 偽元素來構(gòu)建可自定義樣式的展開 / 折疊組件。

details {
  display: flex;
  color: red;
}

details::details-content {
  background-color: hsl(0 0% 0%);
}

開發(fā)體驗(yàn)增強(qiáng)

明暗模式

全新的light-dark() 函數(shù)使開發(fā)者能夠根據(jù)當(dāng)前 color-scheme 值在兩種顏色之間切換,輕松實(shí)現(xiàn)淺色和深色模式的適配。

body {
  color-scheme: light dark; 
  color: light-dark(#333, #fff); 
  background-color: light-dark(#fff, #222); 
}

圖片圖片

@property

2024 年,@property 特性在各瀏覽器中得到廣泛支持,可注冊自定義屬性類型、控制繼承行為并設(shè)置初始值。

@property --color {
    syntax: "<color>";
    inherits: true;
    initial-value: #ea1ca5;
}

div {
    display: flex;
    justify-content: center;
    width: 20vw;
    height: 100px;
    background: var(--color);
}

.color-1 {
    --color: #1a535c;
}

.color-2 {
    --color: rgb(100, 200, 0);
}

.color-3 {
    --color: #3e47db;
}

圖片圖片

Popover API

Popover API 簡化了工具提示、菜單等元素的實(shí)現(xiàn),提升了可訪問性和用戶體驗(yàn)。

<button popovertarget="my-popover" popovertargetaction="toggle">
  Toggle Popover
</button>
<div id="my-popover" popover>
  <p>This is a popover!</p>
</div>

@starting-style

@starting-style 規(guī)則用于在元素首次樣式更新之前定義樣式,結(jié)合 CSS 過渡可創(chuàng)建入場效果。

.container {
  ...
  transition: transform 4s, background-color 4s;
  transform: rotate(0deg);} 
}

@starting-style {
  .container {
    background-color: blue;
    transform: rotate(360deg);
  }
}

圖片圖片

text-stroke

使用 text-stroke 時,paint-order 屬性可控制文本填充和描邊的渲染順序,確保描邊在填充之上,使文本描邊效果更理想。

.paint-order {
  paint-order: stroke fill;
}

圖片圖片

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

2023-12-11 09:02:27

CSS前端CSS 新特性

2020-12-18 11:32:45

編程語言JavaPython

2016-02-16 13:03:06

2010-12-29 09:36:10

思杰

2024-12-25 15:17:06

2021-01-07 07:09:13

深度學(xué)習(xí)人工智能AI

2018-03-01 09:17:30

DevOps 技術(shù)開發(fā)語言

2024-12-10 07:10:00

網(wǎng)絡(luò)初創(chuàng)公司邊緣網(wǎng)絡(luò)

2022-01-04 06:54:31

通信行業(yè)產(chǎn)業(yè)鏈

2018-10-25 10:01:09

SDWAN軟件定義廣域網(wǎng)

2013-12-26 14:59:22

Windows 8Windows 8.1

2011-12-31 14:19:06

Web Apps

2016-12-30 13:31:30

大數(shù)據(jù)盤點(diǎn)

2024-12-09 13:11:30

2013-12-06 14:14:05

LinuxUbuntuFirefox

2014-06-30 14:45:15

騰訊開放平臺

2024-12-09 17:05:18

2024-12-12 17:20:47

2024-12-13 14:56:05

2024-12-05 16:12:43

點(diǎn)贊
收藏

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

主站蜘蛛池模板: 国内av在线 | 欧美日韩综合 | 亚洲人成人一区二区在线观看 | 久久久九九九九 | 精品国产一区二区在线 | 亚洲在线电影 | 一区二区三区视频 | 爱操av| 91高清视频在线观看 | 久久精品一区二区三区四区 | 欧美一级片在线观看 | 成人午夜精品 | 国产在线精品一区二区三区 | 精品丝袜在线 | 国产91视频一区二区 | 国产免费一区 | 日韩精品色网 | 亚洲精品不卡 | 亚洲一区二区不卡在线观看 | 91国自视频 | 亚洲天堂精品一区 | 亚洲福利在线观看 | 精品无码久久久久久国产 | 亚洲精品乱码久久久久久9色 | 亚洲视频中文字幕 | 国产精品美女久久久久久免费 | 在线免费视频一区 | 欧美性大战久久久久久久蜜臀 | 青青草网站在线观看 | 成人在线免费视频 | 久久久久国产一区二区 | 精品国产乱码久久久久久中文 | 国产高清精品在线 | 欧美一级小视频 | 久久精品一二三影院 | 亚洲免费在线观看视频 | www日日日 | 亚洲中午字幕 | 欧美日韩成人在线观看 | 在线日韩av电影 | 欧美精品第一区 |