欧美一级特黄大片做受成人-亚洲成人一区二区电影-激情熟女一区二区三区-日韩专区欧美专区国产专区

如何利用好CSS粘性定位

2021-02-14    分類(lèi): 網(wǎng)站建設(shè)

瀏覽器對(duì) CSS粘性定位有著非常好的支持,但很多開(kāi)發(fā)者都沒(méi)有用過(guò)它。

究其原因有兩個(gè):

第一,受到瀏覽器的良好支持需要漫長(zhǎng)的等待:瀏覽器的支持往往需要很長(zhǎng)的時(shí)間才能完成,到時(shí)候它的功能已經(jīng)被人們遺忘了。

第二個(gè)原因是很多開(kāi)發(fā)者并不能完全理解其工作原理背后的邏輯,這就是我的切入點(diǎn)。


我假設(shè)你們都知道什么事CSS定位,不過(guò)還是先簡(jiǎn)單回顧一下比較好:

在3年前,有四種 CSS 定位: static、 relative、 absolute 和fixed。

static 、 relative 、 absolute 和 fixed之間主要的區(qū)別在于它們?cè)贒OM流中占用的空間。 static 和 relative 會(huì)保留它們?cè)谖臋n流中的自然空間,而 absolute 和 fixed 則不會(huì) —— 它們的空間被移除而且具有浮動(dòng)行為。

正如我下面將要解釋的那樣,新的粘性定位與所有類(lèi)型都有相似之處。

我的第一個(gè)粘性定位

可能很多人都玩過(guò)粘性定位。我已經(jīng)接觸過(guò)一段時(shí)間了,直到我意識(shí)到自己并不是完全理解它。

在第一個(gè)例子中,大家很容易就能看明白 當(dāng)視口到達(dá)定義的位置時(shí),元素會(huì)被粘住。

例:



但問(wèn)題是,它有時(shí)候能用,而有時(shí)卻不起作用。 當(dāng)它工作時(shí),元素會(huì)粘住,但在滾動(dòng)到其他部分,它會(huì)停止粘貼。 作為一個(gè)靠 CSS 混飯吃的人,我完全不能接受自己對(duì)這個(gè)問(wèn)題是不理解的,所以我決定把粘性位置徹底搞清楚。

探索粘性定位

在擺弄它的過(guò)程中,我很快就注意到了:當(dāng)一個(gè)具有 position:sticky 樣式的元素被包裝,且它是包裝元素中唯一的元素時(shí),這個(gè)被定義為 position:sticky 的元素就不會(huì)粘住。



當(dāng)我在包裝元素中添加更多元素時(shí),它就能開(kāi)始正常工作了。

這是為什么?

這是因?yàn)楫?dāng)一個(gè)元素被賦予 position: sticky 樣式時(shí),粘性項(xiàng)目的容器是它可以粘貼的唯一區(qū)域。 粘性元素沒(méi)有任何要浮動(dòng)的元素,因?yàn)樗荒芨?dòng)在同級(jí)元素上,作為唯一的子元素,它不能浮動(dòng)。

怎樣才能讓 CSS 粘性定位起作用

CSS 粘性定位有兩個(gè)主要部分,粘性元素(sticky item)和 粘性容器(sticky container)。

粘性元素 —— 是我們用位置定義的 position: sticky 樣式。 當(dāng)視口位置與位置定義匹配時(shí),該元素將會(huì)浮動(dòng),例如: top: 0px 。

例:



粘性容器 —— 是包裝粘性元素的 HTML 元素。 這是粘性元素可以浮動(dòng)的大區(qū)域。

當(dāng)你定義一個(gè)具有 position:sticky 樣式的元素時(shí),父元素會(huì)被自動(dòng)定義為粘性容器!

記住這一點(diǎn)非常重要! 容器是粘性元素的范圍,并且該元素?zé)o法離開(kāi)其所在的粘性容器。

這就是為什么在前面的例子中,粘性元素沒(méi)有被粘住的原因:這個(gè)粘性元素是粘性容器中唯一的子元素。

CSS 粘性定位的示意圖:



粘性元素與粘性容器

查看在CodePen上的例子:

https://codepen.io/elad2412/pen/QYLEdK

理解 CSS 的粘性行為

正如我前面說(shuō)過(guò)的那樣,CSS 粘性定位的行為與所有其他 CSS 定位不一樣,但從另一個(gè)角度來(lái)說(shuō),它們也有一些相似之處。我來(lái)解釋一下:

相對(duì)(或靜態(tài))—— 粘性定位元素類(lèi)似于相對(duì)和靜態(tài)位置,因?yàn)樗A袅?DOM 中的自然間隙(留在流中)。

固定 —— 當(dāng)元素被粘住時(shí),它的行為與 position: fixed 完全相同,浮動(dòng)在與視口的相同位置,并從流中移除。

絕對(duì) —— 在粘貼區(qū)域的末尾,元素會(huì)停止,并堆疊在另一個(gè)元素的頂部,就像一個(gè)絕對(duì)定位的元素被放在一個(gè) position: relative 容器內(nèi)的行為。

粘在底部?

在大多數(shù)情況下,您可以使用粘性定位將元素粘貼到頂部,如下所示:



這正是它被設(shè)計(jì)的初衷,而在此之前,只能使用JavaScript完成這個(gè)功能。

但你也可以使用它把元素粘到底部。 這意味著你可以把頁(yè)腳定義為粘性,并且在向下滾動(dòng)時(shí)使它看起來(lái)總是被粘在底部。 當(dāng)?shù)竭_(dá)粘性容器的末端時(shí),元素會(huì)停在它的自然位置。 最好是在以粘性容器底部為自然位置的元素上使用它。

完整示例:

HTML



CSS



去CodePen查看演示效果:https://codepen.io/elad2412/pen/MZZVjw

我在開(kāi)發(fā)中常用它來(lái)粘貼摘要表,也會(huì)用在粘性頁(yè)腳導(dǎo)航上,這種方法非常適合。

瀏覽器支持

  • 除了老 IE 瀏覽器外,所有流行的現(xiàn)代瀏覽器都支持粘性定位。
  • 如果用在 Safari 瀏覽器上,你需要添加 -webkit 前綴。



超過(guò)86%的瀏覽器支持粘性定位

新聞標(biāo)題:如何利用好CSS粘性定位
本文鏈接:http://aaarwkj.com/news/100822.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供全網(wǎng)營(yíng)銷(xiāo)推廣、移動(dòng)網(wǎng)站建設(shè)、服務(wù)器托管、用戶體驗(yàn)電子商務(wù)、自適應(yīng)網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)

成都seo排名網(wǎng)站優(yōu)化
日韩高清精品一区二区| 精品日韩电影在线观看| 一卡二卡精品在线免费| 久久久久四虎国产精品| 午夜福利精品在线观看| 92午夜福利精品视频| 亚洲精品女同专区视频| 日韩无码一区二区视频| 99国产精品久久久久久| 色婷婷久久五月中文字幕| 日韩精品福利片午夜免费| 日韩欧美高清一区二区三区| 正在播放日韩黄色精品| 国产精品久久久亚洲不卡| 中文字幕成人免费看片| 国产av专区久久伊人亚洲| 亚洲午夜精品久久久天堂| 色呦呦中文字幕在线播放| 91人妻成人精品一区二区| 亚洲欧美成人高清在线观看| 一级欧美黄片在线播放| 欧美日韩国产天天干| 一二三四在线观看日本资讯| 成年人网站一级黄色免费| 熟妇激情欧美在线播放视频| 欧美大片免费在线播放| 四虎在线观看最新入口| 91精品国产综合久久不国产大片| 這裏隻有无码人妻久久| 亚洲中文字幕永久免费| 国产激情久久久久久影院| 91出品国产福利在线| 手机不卡高清播放一区二区| 不卡一区二区黄色av| 亚洲色图熟女激情另类| 精品亚洲在线一区二区| 欧美日韩国产av一区| 国产又大又黄又粗的黄色| 一区二区三区不卡中文字幕| 日本久久高清免费观看| 日本高清不卡中文字幕|