成人怡红院-成人怡红院视频在线观看-成人影视大全-成人影院203nnxyz-美女毛片在线看-美女免费黄

站長(zhǎng)資訊網(wǎng)
最全最豐富的資訊網(wǎng)站

你可能不了解的CSS容器查詢!!

你可能不了解的CSS容器查詢!!

在前端開發(fā)中經(jīng)常需要按不同屏幕尺寸來進(jìn)設(shè)計(jì)達(dá)到PC和移動(dòng)端響應(yīng)式。我們一般使用CSS媒體查詢來檢測(cè)視口寬度或高度,然后根據(jù)該模式改變?cè)O(shè)計(jì)。 這就是在過去10年中設(shè)計(jì)Web布局的方式。

CSS容器查詢,一個(gè)長(zhǎng)期以來被web開發(fā)者要求的特性,很快就會(huì)出現(xiàn)在CSS中,在最新的 Chrome Canary 中,我們可以通過 chrome://flags/#enable-container-queries 開啟 Container Queries 功能。在本文中,我將介紹它是什么,它將如何改變作為設(shè)計(jì)師的工作流,等等。

當(dāng)前響應(yīng)設(shè)計(jì)狀態(tài)

當(dāng)前,我們實(shí)現(xiàn)響應(yīng)式,一般需要 UI 設(shè)計(jì)三個(gè)樣式,分別是移動(dòng),平板電腦和桌面等。

你可能不了解的CSS容器查詢!!

在上圖中,UI設(shè)計(jì)了三種版本,因此開發(fā)人員可以很好的實(shí)現(xiàn)它,這是很 nice的(這怕偷懶的 UI 只提供PC版本,這就很蛋疼)。

現(xiàn)在我們來看看使用媒體查詢來看看怎么實(shí)現(xiàn)它。

你可能不了解的CSS容器查詢!!

上圖是同一個(gè)組件,它有三個(gè)變體,即defaultCardFeatured。在CSS中,開發(fā)人員需要?jiǎng)?chuàng)建此組件的三個(gè)變體,其中每個(gè)組成均是唯一的。

.c-media {   /* the default styles */   display: flex;   flex-wrap: wrap;   gap: 1rem; }  @media (min-with: 400px) {   .c-media--card {     display: block;   }    .c-media--card img {     margin-bottom: 1rem;   } }  @media (min-with: 1300px) {   .c-media--featured {     position: relative;     /* other styles */   }    .c-media--featured .c-media__content {     position: absolute;     left: 0;     top: 0;     width: 100%;     height: 100%;   } }

上面的變體取決于媒體查詢或視口寬度。 這意味著,我們無法根據(jù)其父寬度控制它們。 現(xiàn)在你可能會(huì)想,這里有什么問題? 喔或,這是一個(gè)很好的問題。

問題是,只有當(dāng)視口寬度大于特定值時(shí),開發(fā)人員才會(huì)使用組件的變體。例如,如果我在平板中使用 featured 也就是 PC 的樣式,它不能工作,為什么?因?yàn)樗拿襟w查詢寬度是大于1300px

你可能不了解的CSS容器查詢!!

不僅如此,當(dāng)內(nèi)容低于預(yù)期時(shí),我們還會(huì)面臨一個(gè)問題。有時(shí),UP主可能只會(huì)添加一篇文章,而設(shè)計(jì)是包含其中的三篇。在這種情況下,要么我們將有一個(gè)空的空間,要么項(xiàng)目將擴(kuò)展以填滿可用的空間。考慮下圖:

你可能不了解的CSS容器查詢!!

在第一種情況下(Case 1),文章太寬,會(huì)導(dǎo)致封面變形。第二種情況下(Case 2)也是一樣的問題

如果使用容器查詢,我們可以通過查詢父組件來決定如何顯示特定組件來解決這些問題。考慮下圖,它展示了我們?nèi)绾问褂萌萜鞑樵儊硇迯?fù)這個(gè)問題。

你可能不了解的CSS容器查詢!!

這樣的話,如果我們把思路轉(zhuǎn)向組件的父組件呢?換句話說,如果我們查詢父組件,并根據(jù)父組件的寬度或高度來決定組件應(yīng)該是什么樣子的呢?我們來看下容器查詢的概念。

什么是容器查詢

首先,讓我定義容器。 它就包含另一個(gè)元素的元素,一般我們叫它 wrapper

最新的 Chrome Canary 中,我們可以通過 chrome://flags/#enable-container-queries 開啟 Container Queries 功能。

當(dāng)一個(gè)組件被放置在一個(gè)項(xiàng)中,它就被包含在該項(xiàng)中。這意味著,我們可以查詢父元素的寬度并據(jù)此修改它。考慮下圖

你可能不了解的CSS容器查詢!!

注意,每個(gè)卡片都有一個(gè)黃色的輪廓線,代表每個(gè)組件的父組件。使用CSS容器查詢,我們可以根據(jù)父組件的寬度修改組件。

<div class="o-grid">   <div class="o-grid__item">     <article class="c-media"></article>   </div>   <!-- + more items --> </div>

該組件是具有類.c-media的項(xiàng),它的父級(jí)是.o-grid__item元素。 在CSS中,我們可以執(zhí)行以下操作:

.o-grid__item {   contain: layout inline-size style; }  .c-media {   /* Default style */ }  @container (min-width: 320px) {   .c-media {     /* The styles */   } }  @container (min-width: 450px) {   .c-media {     /* The styles */   } }

首先,我們告訴瀏覽器,每個(gè)帶有class .o-grid項(xiàng)的元素都是一個(gè)容器。然后,再告訴瀏覽器,如果父元素的寬度等于或大于500px,它應(yīng)該以不同的方式顯示。對(duì)于700px查詢也是如此。這就是CSS容器查詢的工作原理。

此外,我們可以在任何想要的地方定義它們,這意味著如果需要,我們可以在頂級(jí)容器上進(jìn)行查詢。現(xiàn)在大家已經(jīng)理解了CSS容器查詢的基本思想,在看看下面圖片加深一下映像。

你可能不了解的CSS容器查詢!!

在左邊,這是一個(gè)正在調(diào)整大小的視口。在右邊,一個(gè)根據(jù)父組件寬度更改的組件。這就是容器查詢的功能和用途。

在設(shè)計(jì)時(shí)考慮容器查詢

作為一名 UI,你需要適應(yīng)這個(gè)革命性的CSS特性,因?yàn)樗鼘⒏淖兾覀優(yōu)榫W(wǎng)頁(yè)設(shè)計(jì)的方式。我們不僅為屏幕尺寸設(shè)計(jì),還考慮組件在容器寬度變化時(shí)應(yīng)如何適應(yīng)。

現(xiàn)在,設(shè)計(jì)系統(tǒng)變得越來越流行。設(shè)計(jì)團(tuán)隊(duì)將構(gòu)建一組規(guī)則和組件,以便其他成員可以基于它們構(gòu)建頁(yè)面。隨著CSS容器查詢的到來,我們還將設(shè)計(jì)一個(gè)組件應(yīng)該如何根據(jù)其父組件的寬度進(jìn)行調(diào)整。

考慮以下設(shè)計(jì):

你可能不了解的CSS容器查詢!!

請(qǐng)注意,我們有標(biāo)題、文章部分、引文和時(shí)事通訊。它們中的每一個(gè)都應(yīng)該適應(yīng)父視圖的寬度。

我可以把這些組件分成以下幾個(gè)部分

  • Viewport (媒體查詢)
  • Parent (容器查詢)
  • 通用:不受影響的組件,如按鈕、標(biāo)簽、段落。

對(duì)于示例UI,下面是我們?nèi)绾蝿澐纸M件。

你可能不了解的CSS容器查詢!!

當(dāng)我們?cè)谠O(shè)計(jì)UI時(shí)以這種心態(tài)思考時(shí),我們可以開始考慮組件的不同變體,這些組件依賴于它們的父寬度。

在下面的圖中,請(qǐng)注意文章組件的每個(gè)變化是如何以特定的寬度開始的。

你可能不了解的CSS容器查詢!!

作為一名設(shè)計(jì)師,一開始考慮父級(jí)寬度可能有點(diǎn)奇怪,但這是未來的發(fā)展方向。我們?yōu)榍岸碎_發(fā)人員提供每個(gè)組件的細(xì)節(jié)和版本,他們可以使用它們。

不僅如此,我們還可能有一個(gè)組件的變體,它應(yīng)該只顯示在特定的上下文中。例如,事件列表頁(yè)面。在這種情況下,清楚在何處使用此變體是很重要的。

問題是,如何告訴設(shè)計(jì)師應(yīng)該在哪里使用這些組件。

與開發(fā)人員溝通

良好的溝通是項(xiàng)目成功的重要因素。作為一名設(shè)計(jì)人員,我們應(yīng)該提供關(guān)于應(yīng)該在何處使用組件變體的指導(dǎo)。它可以是一個(gè)完整的頁(yè)面設(shè)計(jì),也可以是一個(gè)顯示如何使用每個(gè)組件的簡(jiǎn)單圖。

你可能不了解的CSS容器查詢!!

注意我是如何將每個(gè)變體映射到一個(gè)特定的上下文,而不是一個(gè)視口。為了進(jìn)一步證明這一點(diǎn),我們配合 CSS網(wǎng)格一起使用時(shí),組件的行為會(huì)有何不同。

在CSS網(wǎng)格中,我們可以通過使用auto-fit關(guān)鍵字告訴瀏覽器,如果列的數(shù)量低于預(yù)期,我們希望展開列(您可以在這里閱讀

贊(0)
分享到: 更多 (0)
?
網(wǎng)站地圖   滬ICP備18035694號(hào)-2    滬公網(wǎng)安備31011702889846號(hào)
中文字幕人成无码人妻| 丝袜 中出 制服 人妻 美腿| 国产伦久视频免费观看视频| 乌克兰美女的小嫩BBB| 欧美日本操逼视频| 久久国产色AV免费观看| 国产欧美精品一区二区三区-老狼| 办公室欧美大尺寸SUV| 365天天色综合网| 野花高清在线观看免费| 亚洲国产欧美在线人成最新| 无码少妇丰满熟妇一区二区| 搡搡BB搡搡搡搡BBB| 欧美三级不卡在线观看| 免费观看电视在线高清| 久久精品网站免费观看| 激情影院内射美女| 国产午夜不卡AV免费| ZOOM动物高清视频| AV人摸人人人澡人人超碰妓女| 中文日本字幕MV在现线观看| 亚洲综合成人婷婷五月网址| 亚洲精品无码永久在线观看男男 | 偷窥少妇久久久久久久久| 日本怡春院一区二区三区| 欧美人与牲禽动交精品| 天天躁日日躁狠狠躁裸体| 少妇被黑人到高潮喷出白浆| 日本一区二区三区免费播放| 小SAO货边洗澡边CAO你| 无人区码一码二码三码医生系列| 亚洲日韩国产一区二区三区在线| 亚洲国产精品久久久久蜜桃| 亚洲精品无码MⅤ在线观看| 中国少妇初尝黑人巨高清| 永久看一二三四线| 永久亚洲成A人片777777| 曰韩精品无码一区二区三区视频| 草莓影视在线观看视频| 成人午夜亚洲精品无码网站| 非洲黄网站黑人美女日比群交视频| 成人无码区免费AⅤ片黄瓜视频| 国产亚洲欧美精品一区| 妺妺窝人体色WWW精品| 欧美V国产V亚洲V日韩九九| 漂亮人妻被强中文字幕久久| 欧洲洲一区二区精华液| 午夜无码片在线观看影视| 中国熟妇人妻XXXXX| 国产成年女人特黄特色毛片免| 国产精品VA在线播放| 国产麻豆放荡AV剧情演绎| 老外免费CSGO交易网站下载| 哦┅┅快┅┅用力啊熟妇| 欧美爽到高潮漏水大喷视频| 性VODAFONEWIFI另类| 亚洲精品亚洲人成在线观看| 啊灬啊灬啊灬快灬高潮了老| 国产成人久久AV免费| 国产精品无码AV在线播放 | 精品无人区麻豆乱码1区2区新区| 久久 国产 尿 小便 嘘嘘| 久久久久人妻一区精品果冻| 内射干少妇亚洲69XXX| 欧美日产国产精品| 亚洲AV女人18毛片水真多| 夜夜春夜夜爽一区二区三区| 939W78W78W乳液特色| 成人久久免费网站| 国产精品美女久久久久网站浪潮| 精品国产国语对白久久免费| 美女脱个精光露出奶头和尿口| 人妻精油按摩BD高清中文字幕| 熟妇人妻午夜寂寞影院| 中文字AV字幕在线观看| 国产情侣疯狂作爱系列| 人妻丰满熟妇AV无码区HD| 亚洲一区二区三区无码久久| AV人摸人人人澡人人超碰下载| 国产在线精品一区二区三区不卡| 久久久亚洲综合久久久久87| 视频一区麻豆国产传媒 | 岳故意装睡让我挺进去观看| А√天堂资源地址在线| 久久er99热精品一区二区| 欧美熟VIDEOS肥婆| 亚洲欧美日韩国产手机在线| 99精品国产在热久久婷婷| 公的下面好大弄得我好爽| 饥渴人妻精油按摩无码专区| 少妇婬荡久久久久AV无码| 99久RE热视频这里只有精品6| 国产成人无码AV一区二区在线观| 欧美成人国产精品视频| 亚洲中字慕日产2020| 国产在线观看无遮挡无码AⅤ多人 国产在线观看无码免费视频 | 国产精品日韩专区第一页| 肉欲麻豆天美传媒| 亚洲欧美成人AⅤ在线专区| CC小恩雅透明内抹油的使用方法| 国产精品不卡AⅤ在线播放| 欧洲无码精品A码无人区| 尤物YW午夜国产精品视频| 黑人巨茎迎战白嫩少妇| 欧洲Av无码放荡人妇网站| 无套内射AV二区| 中文字幕人妻互换激情| 久久国产精品无码网站| 亚洲AV永久无码精品九九| BGMBGMBGM成熟交| 老师你的兔子好软水好多小时| 亚洲人成自拍网站在线观看| 好紧好爽太大了视频| 日本JAPANESE 30成熟| 亚洲成AV人片在线观看天堂无| SEERX性欧美| 精品国产AV无码专区亚洲AV| 西西人体444www大胆无码视频| 国产成人亚洲精品青草天美| 少妇人妻无码专区视频| 大又大粗又爽又黄少妇毛片免费| 久久久久久人妻无码| 天天AV天天爽无码中文| 丰满少妇被猛烈进AV毛片| 老太婆BBW搡BBBB搡搡搡搡| 亚洲综合日韩久久成人AV| 久激情内射婷内射蜜桃| 亚洲熟妇在线观看| 国产超碰AV人人做人人爽| 色综合久久成人综合网五月| 中文字幕精品亚洲人成在线| 狼人大香伊蕉国产WWW亚洲| 无码人妻精品一区二区蜜桃百度| 99久久国产宗和精品1上映| 内射少妇骚B一√| 99久久99这里只有免费费精品 | YELLOW免费观看高清在线| 欧美性一区二区三区| 把腿张开老子臊烂你的小说 | 国产精品久久久久久久久久免费| 我跟闺蜜公交车被弄到高潮| 国产目拍亚洲精品一区| 亚洲AV永久无码精品放毛片一| 好深好湿好硬顶到了好爽| 亚洲人成未满十八禁网站| 久久亚洲欧美国产精品| 亚洲AV无码精品色夜午夜网址| 丁香花在线电影小说观看| 熟女无套高潮内谢吼叫免费| 国产精品偷窥熟女精品视频| 亚洲AV无码一区二区三区乱码4| 精品少妇人妻AV免费久久久| 亚洲综合无码一区二区| 男人操女人视频图片日韩| 亚洲男男GAY 18自慰网站| 久久精品久久精品久久39| 中国丰满少妇性BBBBBBBB| 欧美顶级METART裸体全部自慰 | 熟妇无码乱子成人精品| 国产拍揄自揄免费观看| 亚洲精品无码久久千人斩| 局长从后面握住我的奶| 99无人区码一码二码三码四| 乳奴调教榨乳器拘束机器| 国产日韩亚洲大尺度高清| 亚洲男人成人性天堂网站| 免费无码高潮流白浆视频| 波多野结系列18部无码观看A | JAPANESE丰满人妻HD| 美丽人妻在夫前被黑人| 亚洲综合无码久久精品综合| 内射口爆少妇麻豆| 大鷄巴久久久久久久久久| 亚洲AV成人无码网站大全唐人 | 无码AV岛国片在线播放| 精品免费看国产一区二区| 性姿势108式大全图解| 国产精品亚洲А∨无码播放麻豆| 偷窥 性别 瘾 XXXXX| 精品人妻少妇一区二区三区| 祖母和おばあちゃん的区别| 美女与野兽在线观看| 成人综合婷婷国产精品久久| 亚洲AV无码乱码国产精品| 免费AV网站在线观看| 大肉大捧一进一出视频出来呀| 亚洲VA久久久噜噜噜熟女8| 国模无码人体一区二区| 亚洲AV无码专区日韩乱码不卡| 乱中年女人伦AV二区| 51无人区码一码二码三码| 色一情一乱一伦一区二区三区| 黑人大战亚洲女精品区| 99RE热这里只有精品视频| 无码视频一区二区三区在线观看| 久久久亚洲欧洲日产国码ΑV| 成人国成人国产SUV| 亚洲精品成人网站在线观看| 人妻无码不卡中文字幕在线视频| 成人18禁在线播放|