精品欧美一区二区三区在线观看 _久久久久国色av免费观看性色_国产精品久久在线观看_亚洲第一综合网站_91精品又粗又猛又爽_小泽玛利亚一区二区免费_91亚洲精品国偷拍自产在线观看 _久久精品视频在线播放_美女精品久久久_欧美日韩国产成人在线

12 個現代 CSS 一行升級,你學會了嗎?

開發 前端
在某些情況下,滾動條的出現或消失可能會導致不必要的布局變化。舉個栗子,當顯示對話框覆蓋并且背景頁面添加 overflow: hidden 防止滾動時,導致從刪除不再需要的滾動條發生轉變。

大家好,這里是大家的林語冰。堅持閱讀,自律打卡,每天一次,進步一點。

本期共享的是 —— 那些我們可以開始使用或提前預習的 CSS 現代屬性。

有時,優化我們 App 的 CSS 只需要一行代碼就能升級或增強!了解 12 個現代化屬性,將其合并到項目中,享受減少技術債務、刪除 JS,以及輕松贏得用戶體驗的樂趣。

本文會科普 3 種不同兼容性的屬性:

  • 穩定升級:通過替換舊技術,修復 hack(奇技淫巧)或問題
  • 穩定增強:通過良好支持的現代屬性,提供改進的體驗
  • 漸進增強:在支持這些屬性時提供升級的體驗,但不會尚未支持的瀏覽器中造成損害

穩定升級

以下支持良好的屬性可以替換舊技術,輔助修復 hack或長期存在的頑瘴痼疾。

aspect-ratio

您是否曾經遭遇視頻嵌入,強制采用 16:9 等寬高比的需求?截至 2021,aspect-ratio 屬性在常青瀏覽器中保持穩定,并且是定義寬高比所需的唯一屬性。

對于高清無碼視頻,我們可以只使用 aspect-ratio: 16/9 一行代碼搞定。對于完美平方,只需要 aspect-ratio: 1,因為隱含的第二個值也是 1。

/* 16:9 高清無碼 */
.aspect-ratio-hd {
  aspect-ratio: 16/9;
}

/* 正方形 */
.aspect-ratio-square {
  aspect-ratio: 1;
}

粉絲請注意,應用的 aspect-ratio 十分寬容,且允許內容優先。這意味著,當內容導致元素在至少一個維度上超過該比率時,元素仍會增長或改變形狀,來適應內容。為了制止這種行為,我們可以添加其他維度屬性,比如 max-width,這可能是避免擴展到 Flex 或網格容器之外的必備措施。

/* 
  應用到 Flex 子代元素,
  這些元素受限于父級元素的尺寸
 */
.aspect-ratio-square {
  aspect-ratio: 1;
}

object-fit

這實際上是穩定增強中最古老的屬性,但它搞定了一個重要問題,并且絕對符合一行代碼升級的人設。

使用 object-fit 會導致 <img> 或其他可替換元素充當其內容的容器,并使這些內容采用類似于 background-size 的調整大小行為。

雖然 object-fit 有若干可用的值,但以下是您最有可能使用的值:

  • cover:圖像調整大小來覆蓋元素,并保持其縱橫比,使內容不扭曲
  • scale-down:圖像在元素內按需調整大小,使其完全可見,而不會被剪切,并保持其縱橫比,如果元素具有不同的渲染縱橫比,這可能會導致圖像周圍出現額外空間

無論哪種情況,object-fit 都是與 aspect-ratio 完美搭配的屬性,可確保應用自定義寬高比時圖像不會扭曲。

.image {
  object-fit: cover;
  aspect-ratio: 1;

  /* 可選:限制圖像大小 */
  max-block-size: 250px;
}

margin-inline

作為眾多邏輯屬性之一,margin-inline 用于設置水平書寫模式下的左右側內聯邊距的簡寫。

一行代碼優化有手就行:

/* 以前的寫法 */
margin-left: auto;
margin-right: auto;

/* 現在的寫法 */
margin-inline: auto;

邏輯屬性已經存在好幾年了,現在的瀏覽器支持率高達 98%,偶爾需要前綴。邏輯屬性及其對于擁有國際受眾的網站至關重要。

穩定增強

這些支持良好的現代 CSS 屬性可以提供改進的體驗,并且還可以允許替換舊方法甚至 JS 輔助的解決方案。不太可能需要備胎解決方案,盡管這取決于您的特定 App 的考慮因素,并且始終鼓勵測試。

text-underline-offset

使用 text-underline-offset 可以控制文本基線和下劃線之間的距離。該屬性已成為本人標準樣式重置的一部分,應用如下:

a:not([class]) {
  text-underline-offset: 0.25em;
}

我們可以使用此偏移量來清除下行部分,并提高易讀性,特別是當鏈接緊密分組時,比如鏈接的項目符號列表。

此升級可能會取代舊的 hack,比如邊框或偽元素,甚至漸變背景,尤其是與它的好基友屬性“夢幻聯動”時:

  • text-decoration-color 可以更改下劃線顏色
  • text-decoration-thickness 可以更改下劃線筆劃粗細。

outline-offset

當我們想要元素和焦點輪廓之間的距離時,您是否一直在使用 box-shadow 或偽元素,提供自定義輪廓?

粉絲福利!您可能忽略了長期可用的 outline-offset 屬性,早在 2006 就有了,它可以將輪廓推離具有正值的元素,或將其拉入具有負值的元素。

.outline-offset {
  outline: 2px dashed blue;
  outline-offset: var(--outline-offset, 0.5em);
}

粉絲請注意,輪廓不會作為元素盒子大小的一部分進行計算,因此增加距離不會增加元素占用的空間量。這類似于 box-shadow 在不影響元素大小的情況下的渲染方式。

scroll-margin-top/bottom

scroll-margin 屬性集以及相應的 scroll-padding 允許向滾動位置上下文中的元素添加偏移量。換而言之,添加 scroll-padding-top 可以增加元素上方的滾動偏移,但不會影響其在文檔中的布局位置。

這有什么用呢?它可以緩解激活錨鏈接時粘性導航元素覆蓋內容引起的問題。使用 scroll-margin-top 我們可以在通過導航滾動到元素時增加元素上方的空間,來考慮粘性導航占用的空間。

個人喜歡在樣式重置中為任何具有 [id] 屬性的元素添加通用起始規則,因為它有可能成為錨鏈接。

[id] {
  scroll-margin-top: 2rem;
}

為了在考慮粘性、固定或絕對定位元素的重疊時,獲得更給力的解決方案,我們可能需要使用具有后備值的自定義屬性。然后,在 JS 的輔助下,測量所需的實際距離,并更新自定義屬性值。

[id] {
  /* 按需使用 JS 更新 --scroll-margin */
  scroll-margin-top: var(--scroll-margin, 2rem);
}

我鼓勵您進一步升級此解決方案,并使用等效的邏輯屬性:scroll-padding-block-start 和 -block-end。

color-scheme

您可能熟悉可以自定義深淺主題的 prefers-color-scheme 媒體查詢。CSS 屬性 color-scheme 是一個選用的瀏覽器 UI 元素,包括表單控件、滾動條和 CSS 系統顏色。適應要求瀏覽器使用 light 或 dark 方案渲染這些項目,并且該屬性允許定義優先順序。

如果我們要啟用調整整個 App,請在 :root 上設置以下內容,即優先選擇 dark 主題,或翻轉順序來優先選擇 light 主題。

:root {
  /* 深色優先 */
  color-scheme: dark light;
  /* 淺色優先 */
  color-scheme: light dark;
}

我們還可以在單個元素上定義 color-scheme,比如調整具有深色背景的元素內的表單控件,提高對比度。

.dark-background {
  color-scheme: dark;
}

accent-color

如果您曾經想更改復選框或單選按鈕的顏色,那么您踏破鐵鞋得到是 accent-color。使用此屬性,我們可以修改單選按鈕和復選框的 :checked 外觀,以及進度元素和范圍輸入的填充狀態。如果我們沒有其他覆蓋,瀏覽器的默認焦點“光環”也可能會被調整。

:root {
  accent-color: mediumvioletred;
}

考慮將 accent-color 和 color-scheme 添加到我們的基準 App 樣式中,快速實現自定義主題管理。

width: fit-content

個人最愛的 CSS 隱形寶藏之一是使用 fit-content 將元素“收縮包裝”到其內容。

盡管我們可能使用了內聯顯示值,比如 display: inline-block,將元素的寬度減小到內容大小,但升級到 width: fit-content 可以實現同款效果。width: fit-content 的優點在于,它使 display 值可用,因此不會更改元素在布局中的位置,除非您也對其進行調整。計算盒子的大小會調整為 fit-content 創建的尺寸。

.fit-content {
  width: fit-content;
}

fit-content 值是啟用內在大小調整的若干關鍵字之一。

請考慮將此技術二次升級為相當于 inline-size: fit-content 的邏輯屬性。

漸進增強

漸進增強的 CSS 屬性在被支持時可提供升級的體驗,且可以放心使用,而不必擔心在尚未支持的瀏覽器中造成損害。這意味著,它們不需要備胎方案,即使它們是現代 CSS 的最新添加內容。

overscroll-behavior

包含的滾動區域,即允許滾動溢出的尺寸有限的區域的默認行為是,當滾動在元素中用完時,滾動交互將傳遞到后臺頁面。這對于我們的用戶而言,最好的情況可能是有點頭大,最壞的情況則是直接紅溫。

使用 overscroll-behavior: contain 會將滾動隔離到所包含的區域,一旦到達滾動邊界,就會將其移動到父頁面,防止繼續滾動。這在諸如導航鏈接側邊欄之類的上下文中非常有用,該側邊欄可能具有與長文章等主頁內容獨立的滾動條。

.sidebar,
.article {
  overscroll-behavior: contain;
}

text-wrap

截至去年最新的屬性之一是 text-wrap,它有兩個值可以搞定不平衡行的排版問題。這包括防止“orphans”,這用來描述最后一個文本行中單獨存在的一個單詞。

第一個可用值是 balance,其目標是平衡每行文本的字符數。

換行文本有六行限制,因此該技術最適合用于標題或其他較短的文本段落。限制應用范圍也有助于限制對頁面渲染速度的影響。

:is(h1, h2, h3, h4, .text-balance) {
  text-wrap: balance;
  max-inline-size: 25ch;
}

pretty 的另一個值專門搞定了“orphans”的預防問題,且可以更廣泛地應用。pretty 背后的算法將評估文本塊中的最后四行,按需調整,確保最后一行有兩個或更多單詞。

p {
  text-wrap: pretty;
  max-inline-size: 35ch;
}

使用 text-wrap 是一個很好的漸進增強。雖然但是,任何調整都不會更改元素的計算寬度,因此某些布局中的副作用可能是文本旁邊多余空間增加。

scrollbar-gutter

在某些情況下,滾動條的出現或消失可能會導致不必要的布局變化。舉個栗子,當顯示對話框覆蓋并且背景頁面添加 overflow: hidden 防止滾動時,導致從刪除不再需要的滾動條發生轉變。

現代 CSS 屬性 scrollbar-gutter 可以在布局中為滾動條保留空間,防止出現多余的移動。當不需要滾動條時,瀏覽器仍然會繪制一個裝訂線,作為除了滾動容器上的任何填充之外創建的額外空間。

粉絲請注意,當且僅當用戶的系統設置不是“overlay”滾動條時,比如 Mac OS 的默認設置,此屬性才有效,其中滾動條只顯示為正在滾動的內容上的覆蓋。不要為了 scrollbar-gutter 而放棄內邊距,因為當使用覆蓋滾動條時,我們會失去所有預期空間。

由于這是視覺上明顯的額外空間,因此我們可以選擇使用兩個關鍵字來分配此屬性:scrollbar-gutter: stable both-edges。單獨使用 stable 只會在滾動條的位置添加一個裝訂線,而添加 both-edges 首選項也會在滾動容器的另一側添加空間。當布局不需要滾動條可見時,這可以確保視覺平衡。

責任編輯:武曉燕 來源: 人貓神話
相關推薦

2022-10-09 09:30:33

CSS瀏覽器十六進制

2022-07-08 09:27:48

CSSIFC模型

2022-05-06 09:00:56

CSS元素Flex

2023-08-22 10:25:19

CSS動畫網頁

2023-02-24 08:32:50

CSS漸變屬性

2022-10-27 09:13:58

CSSGradient

2023-11-08 10:12:40

架構函數元素

2022-01-20 07:31:49

架構

2024-01-19 08:25:38

死鎖Java通信

2023-01-10 08:43:15

定義DDD架構

2024-02-04 00:00:00

Effect數據組件

2023-07-26 13:11:21

ChatGPT平臺工具

2022-04-01 09:02:19

CSS選擇器HTML

2024-05-30 09:43:00

2024-09-26 09:10:08

2024-01-02 12:05:26

Java并發編程

2023-08-01 12:51:18

WebGPT機器學習模型

2021-10-04 09:29:41

對象池線程池

2023-03-26 22:02:53

APMPR監控

2024-06-21 08:15:25

點贊
收藏

51CTO技術棧公眾號

欧美va亚洲va香蕉在线| 中文字幕一区在线观看视频| 97精品免费视频| 人人妻人人澡人人爽人人精品| 亚洲淫成人影院| 国产精品欧美一区喷水| 91精品天堂| 久久国产视频精品| 888久久久| 亚洲精品国产福利| 欧美一级xxxx| 偷拍自拍在线看| 亚洲图片激情小说| 你懂的网址一区二区三区| 91久久精品国产91性色69| 亚洲激情亚洲| 久久久国产精品免费| 加勒比一区二区| 亚洲日本va中文字幕| 欧美在线999| 黄页免费在线观看视频| 日本美女在线中文版| 91在线看国产| 高清视频在线观看一区| 中文字幕有码视频| 国产亚洲毛片在线| 久久69精品久久久久久久电影好| 人人妻人人澡人人爽人人精品| 日本超碰一区二区| 欧美私模裸体表演在线观看| 欧美韩国日本在线| 黑人另类精品××××性爽| 国产精品国产三级国产普通话三级| 精品久久久久久一区| 99精品免费观看| 蜜桃一区二区三区四区| 18久久久久久| 国产在线一区视频| 亚洲香蕉av| 中文字幕综合一区| 精品成人无码一区二区三区| 日韩在线麻豆| 亚洲第一免费网站| 韩国av中国字幕| 欧美久久一区二区三区| 欧美日韩一区二区三区四区| 国产精品亚洲αv天堂无码| sm久久捆绑调教精品一区| 亚洲精品菠萝久久久久久久| 一区二区av| 日本激情在线观看| 日韩一区在线看| 一区二区在线高清视频| 中文字幕日本在线| 国产精品视频看| 日韩三级电影| 亚洲精品传媒| 国产精品久久久一本精品| 日韩美女一区| 欧美a免费在线| 国产精品久久久久影院| 亚洲激情一区二区| 午夜在线小视频| 亚洲同性同志一二三专区| 中文字幕第50页| 1769免费视频在线观看| 亚洲激情自拍偷拍| 精品丰满人妻无套内射| 精品三级久久| 日韩欧美精品网址| 男人女人黄一级| 日韩国产91| 欧美一级精品大片| 无码人妻精品一区二区三区99不卡| 超碰成人福利| 亚洲精品一区中文| 日本成人午夜影院| 久久久久久久久国产一区| 精品中文字幕在线| 亚洲精品1区2区3区| 美女日韩在线中文字幕| 国产精品入口夜色视频大尺度| 91麻豆一区二区| 国产成a人亚洲| 精品一区久久久久久| 蝌蚪视频在线播放| 成人欧美一区二区三区白人| r级无码视频在线观看| 刘亦菲一区二区三区免费看| 欧美午夜影院一区| 风韵丰满熟妇啪啪区老熟熟女| 日韩a级大片| 日韩一中文字幕| 国产精彩视频在线| 日韩一区精品视频| 99久久精品久久久久久ai换脸| 水莓100在线视频| 中文字幕av不卡| av免费看网址| 国产精品原创视频| 亚洲国产成人精品久久久国产成人一区 | 中文字幕人成人乱码| 久久久久中文字幕2018| 久久精品99北条麻妃| 风间由美性色一区二区三区 | 欧美高清电影在线| 亚洲影院免费观看| 中文字幕 91| 欧美日韩一区二区三区在线电影| 日韩一区二区av| 天天操夜夜操视频| 成人晚上爱看视频| 中文字幕av导航| 韩国美女久久| 亚洲精品在线一区二区| 久草手机视频在线观看| 午夜在线视频观看日韩17c| 亚洲自拍偷拍视频| 在线观看免费网站黄| 欧美性xxxx极品hd欧美风情| 麻豆av免费看| 中文字幕一区二区三三 | 成人免费一级片| 成人av中文字幕| 成人免费看片视频在线观看| 免费视频观看成人| 亚洲免费伊人电影在线观看av| 久久亚洲精品大全| 国产一区二区影院| 亚洲精品中字| 成人午夜在线| 亚洲午夜精品久久久久久久久久久久 | 99精品在线视频观看| 国产精品久久久久影院亚瑟| 日韩免费高清在线| 免费欧美激情| 91精品国产高清久久久久久| 欧美一级特黄aaaaaa大片在线观看| 亚洲老妇xxxxxx| 天天干天天色天天干| 色一区二区三区四区| 国产精品wwww| av电影在线网| 欧美日韩极品在线观看一区| 中文字幕有码在线播放| 久久久久国内| 日韩理论片在线观看| 成人软件在线观看| 一本色道久久综合亚洲精品小说 | 免费久久99精品国产| 欧美三级电影在线播放| 桃色av一区二区| 亚洲精品之草原avav久久| 看片网址国产福利av中文字幕| 成人av在线一区二区| 日韩伦理在线免费观看| 久久这里只有精品一区二区| 97在线视频精品| 色视频精品视频在线观看| 午夜视频一区在线观看| 噜噜噜在线视频| 久久最新视频| 亚洲在线视频一区二区| 日韩在线精品强乱中文字幕| 久久久久久久爱| 五月婷婷六月丁香综合| 色94色欧美sute亚洲线路一久| www久久久久久久| 激情综合色播激情啊| 色哟哟免费网站| 九九热播视频在线精品6| 欧美亚洲国产成人精品| 在线观看麻豆蜜桃| 欧美成人免费网站| yjizz国产| 欧美国产乱子伦| 手机在线播放av| 国产欧美丝祙| 亚洲日本精品| 成人免费在线电影网| 人体精品一二三区| 免费在线看黄| 亚洲第一区在线| 国产一卡二卡三卡| 一区二区三区色| 无码人妻精品一区二区三应用大全| 日韩成人一区二区| a级黄色片免费| 妖精一区二区三区精品视频| 国产日韩精品视频| wwwww亚洲| 最近2019年手机中文字幕| 亚洲精品一区二区三区蜜桃| 欧美特黄级在线| 国产suv一区二区三区| 久久色成人在线| 香蕉视频色在线观看| 丝袜亚洲另类欧美综合| 青青草原网站在线观看| 亚洲丝袜啪啪| 亚洲一区精品电影| 天天综合网站| 亚州国产精品久久久| 久久久久久久久免费视频| 亚洲精品中文字| 亚洲成人黄色片| 欧美视频自拍偷拍| 一级片中文字幕| 樱桃视频在线观看一区| 人人爽人人爽人人片| 成人小视频在线观看| 奇米视频888| 久久亚洲图片| 国产av人人夜夜澡人人爽麻豆| 国产高清一区二区| 视频一区亚洲| 小说区图片区色综合区| 成人自拍网站| 高清不卡一区| 国产精品永久在线| 日日av拍夜夜添久久免费| 97av在线播放| 91九色在线看| 欧美日本在线视频中文字字幕| 午夜国产福利在线| 亚洲欧美制服中文字幕| 日韩一区二区三区不卡| 在线电影一区二区三区| 黄色在线观看国产| 五月激情综合网| 国产一级av毛片| 亚洲精品久久嫩草网站秘色| 久草手机视频在线观看| 国产精品久久久久精k8| 免费看黄色av| 日本一区二区三区免费乱视频| 国产传媒第一页| 91色porny在线视频| 成熟妇人a片免费看网站| 国产二区国产一区在线观看| 香蕉视频色在线观看| 国产一区二区三区日韩| av中文字幕网址| 精品无人区卡一卡二卡三乱码免费卡| 午夜视频你懂的| 蜜桃精品在线观看| 亚洲这里只有精品| 美女精品一区二区| www.污污视频| 国产91富婆露脸刺激对白| 美女扒开腿免费视频| 99精品黄色片免费大全| 亚洲做受高潮无遮挡| 国产视频一区二区在线| 欧美成人另类视频| 亚洲欧洲日产国码二区| 成人在线观看高清| 亚洲在线免费播放| 国产成人无码一区二区三区在线| 香蕉久久一区二区不卡无毒影院 | av网站大全在线| 欧美成人一二三| 国产黄色大片在线观看| 91精品国产91久久久久| 亚洲高清黄色| 成人有码在线播放| baoyu135国产精品免费| 久久久久久99| 精品色999| 日本一二三区视频在线| 在线亚洲观看| 奇米影音第四色| 国产成人综合亚洲网站| 美女又爽又黄免费| 国产午夜精品久久久久久免费视 | 国产乱理伦片a级在线观看| 中文字幕成人精品久久不卡| 羞羞视频在线观看不卡| 日本亚洲欧洲色| 国产精品亚洲欧美一级在线| 国产日韩精品久久| 精品久久影视| 国产一区二区三区在线免费| 国产一区二区三区的电影| 久久婷婷综合色| 不卡的av电影在线观看| 性爱在线免费视频| 五月天网站亚洲| 国产精品探花视频| 精品无人区乱码1区2区3区在线| 99青草视频在线播放视| 久久青草精品视频免费观看| 亚州一区二区三区| 成人av电影免费| av永久不卡| av高清在线免费观看| 美女免费视频一区二区| 精品人妻伦一二三区久| 中文字幕国产精品一区二区| 黄色小视频在线免费看| 欧美男女性生活在线直播观看| 刘亦菲毛片一区二区三区| 在线视频一区二区| 激情黄产视频在线免费观看| 成人性生交xxxxx网站| 亚洲福利网站| 成年人网站国产| 国产在线视频一区二区三区| 加勒比综合在线| 亚洲成人精品影院| 国产精品毛片久久久久久久av| 亚洲乱码国产乱码精品精天堂| 牛牛电影国产一区二区| 成人黄色生活片| 欧美亚洲在线日韩| 久久无码高潮喷水| 成人ar影院免费观看视频| √天堂中文官网8在线| 在线精品视频免费观看| 香蕉国产在线视频| 久久全球大尺度高清视频| 国产不卡精品| 正在播放国产精品| 蜜桃久久精品一区二区| 亚洲人成人无码网www国产 | 日韩av影片| 国产九九精品视频| 国产尤物久久久| 69堂免费视频| 成人精品视频一区二区三区 | 国产精品一级伦理| 青青久久av北条麻妃黑人| 国产欧美自拍一区| 无码av天堂一区二区三区| 国产成人午夜99999| 久久r这里只有精品| 69av一区二区三区| 日本在线观看免费| 国产精品视频久久| 日韩影院二区| www.国产福利| 日韩美女视频一区二区 | 水蜜桃亚洲精品| 久久一区亚洲| 亚洲第一综合网| 欧美性受xxxx| 婷婷在线视频观看| 成人观看高清在线观看免费| 99久久久久国产精品| 天堂av2020| 亚洲美女屁股眼交| 成 人 免费 黄 色| 高清一区二区三区四区五区| 国产精品极品国产中出| 国产淫片免费看| 久久久精品免费网站| 中文字幕久久熟女蜜桃| 色妞一区二区三区| 999精品视频在线观看| 992tv快乐视频| 不卡视频在线观看| 无码一区二区三区| 最新国产精品拍自在线播放| 日韩色性视频| 欧洲精品在线播放| 99久久久久免费精品国产| 秋霞av一区二区三区| 色七七影院综合| 91精品国产自产在线丝袜啪| 日本wwww视频| 欧美极品aⅴ影院| 精品人妻av一区二区三区| 69精品小视频| 成人午夜国产| jjzz黄色片| 欧美亚洲高清一区| 丝袜国产在线| 欧美精品国产精品久久久| 麻豆极品一区二区三区| 精国产品一区二区三区a片| 精品视频久久久久久久| 欧美一区=区三区| 国产精品12345| 国产精品日韩成人| 囯产精品一品二区三区| 国产精品444| 国内精品久久久久久久97牛牛 | 黄色高清无遮挡| 亚洲免费观看高清完整版在线| 视频午夜在线| 亚洲淫片在线视频| 麻豆精品网站| 黄色一级视频免费| 亚洲最新av网址| 国产丝袜一区| 依人在线免费视频| 欧美色xxxx| 青春草视频在线观看| 色女孩综合网| 99精品欧美一区二区蜜桃免费|