<kbd id="afajh"><form id="afajh"></form></kbd>
<strong id="afajh"><dl id="afajh"></dl></strong>
    <del id="afajh"><form id="afajh"></form></del>
        1. <th id="afajh"><progress id="afajh"></progress></th>
          <b id="afajh"><abbr id="afajh"></abbr></b>
          <th id="afajh"><progress id="afajh"></progress></th>

          【每日一題】說(shuō)說(shuō)CSS的position屬性

          共 2918字,需瀏覽 6分鐘

           ·

          2021-10-01 11:38

          人生苦短,總需要一點(diǎn)儀式感。比如學(xué)前端~

          目錄:

          • 概念

          • position 屬性值

            • static (默認(rèn)值)

            • relative 相對(duì)定位

            • absolute 絕對(duì)定位

            • fixed 固定定位

            • sticky 粘性定位

            • initial 使用默認(rèn)值

            • inherit 繼承

          概念

          position 屬性把元素放置到一個(gè)“靜態(tài)的/相對(duì)的/絕對(duì)的/固定的”位置中。

          position 屬性值

          position 的屬性值共有四個(gè)常用的:staticrelativeabsolutefixed
          還有不常用的:inheritinitialsticky

          static (默認(rèn)值)

          是 position 的默認(rèn)值,一般不設(shè)置 position 屬性時(shí),元素會(huì)按照正常的文檔流進(jìn)行排列。

          relative 相對(duì)定位

          主要重點(diǎn)回答“它是相對(duì)哪個(gè)對(duì)象來(lái)進(jìn)行偏移的”,答案是“按照它原本的位置”。也就是 “相對(duì)自身進(jìn)行偏移”

          需要注意的是,相對(duì)定位不會(huì)脫離文檔流,原來(lái)的位置仍然被保留。

          absolute 絕對(duì)定位

          它是相對(duì)“不是 static 的、最近一級(jí)元素”來(lái)進(jìn)行定位的,如果沒(méi)有這樣的元素,那么相對(duì) body 元素來(lái)進(jìn)行定位,被定位元素會(huì)脫離文檔流,然后我們可以通過(guò)left、right、top、bottom來(lái)調(diào)整元素的位置。

          或者換句話理解:假設(shè)一個(gè) div 元素,它所有的父級(jí)元素屬性都是 position:static,也就是所有父級(jí)元素都沒(méi)有設(shè)置 position,那么這個(gè) div 就會(huì)相對(duì) body 元素來(lái)進(jìn)行定位。
          如果這個(gè) div 元素存在某一個(gè)父級(jí)元素設(shè)置了除 static 以外的 position,那么這個(gè) div 就會(huì)相對(duì)這個(gè)父元素來(lái)進(jìn)行定位。

          fixed 固定定位

          固定定位是最好理解的,它相對(duì)瀏覽器的窗口進(jìn)行定位脫離文檔流,即使拖動(dòng)滾動(dòng)條,元素的位置也是不變的,我們使用瀏覽器時(shí)一些廣告效果就是這樣的。

          sticky 粘性定位

          position 設(shè)置 sticky 的元素,在屏幕范圍時(shí)該元素的位置并不受到定位影響(設(shè)置是 top、left 等屬性無(wú)效),當(dāng)該元素的位置將要移出偏移范圍的時(shí)候,定位又會(huì)變成 fixed,根據(jù)設(shè)置的 left、top 等屬性成為固定位置的效果。

          可以用來(lái)做這種固釘效果:https://ant.design/components/affix-cn/

          向上滾動(dòng)一段距離:

          sticky 屬性有以下幾個(gè)特點(diǎn):

          • 該元素并不脫離文檔流,仍然保留元素原本在文檔流中的位置。
          • 該元素在容器中被滾動(dòng)超過(guò)指定的偏移量時(shí),元素在容器內(nèi)固定在指定的位置。例如你設(shè)置了 top:50px,那么在 sticky 元素到達(dá)距離相對(duì)定位的元素頂部 50px 的位置時(shí)固定,不再向上移動(dòng)。
          • 元素固定的相對(duì)偏移量是相對(duì)離它最近的具有滾動(dòng)框的祖先元素,如果祖先元素都不可滾動(dòng),那么相對(duì)于 viewport 來(lái)計(jì)算元素的偏移量,

          但是這個(gè)屬性的兼容性還不是很友好,需要注意一下

          initial 使用默認(rèn)值

          initial 關(guān)鍵字用于設(shè)置 css 屬性為它的默認(rèn)值,可作用于任何 css 樣式。(IE 不支持該關(guān)鍵字)

          inherit 繼承

          繼承父元素的 position 屬性,但需要注意的是 IE8 以及往前的版本都不支持 inherit 屬性。


          以上,面試常問(wèn)的用紅色字加粗強(qiáng)調(diào)了。

          其他跟position相關(guān)的布局技巧,請(qǐng)看這幾篇文章:

          ● 工作中常見(jiàn)頁(yè)面布局的n種實(shí)現(xiàn)方法

          ● 三欄響應(yīng)式布局(左右固寬中間自適應(yīng))的5種方法

          ● 兩欄自適應(yīng)布局的n種實(shí)現(xiàn)方法匯總

          ● 工作中常見(jiàn)的兩欄布局案例及分析

          ● 垂直居中布局的一百種實(shí)現(xiàn)方式

          ● 常用九宮格布局的幾大方法匯總

          所有《每日一題》的 知識(shí)大綱索引腦圖 整理在此:https://www.yuque.com/dfe_evernote/interview/everyday
          你也可以點(diǎn)擊文末的 “閱讀原文” 快速跳轉(zhuǎn)


          END
          愿你歷盡千帆,歸來(lái)仍是少年。

          讓我們一起攜手同走前端路!

          關(guān)注公眾號(hào)回復(fù)【加群】即可

          瀏覽 90
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          評(píng)論
          圖片
          表情
          推薦
          點(diǎn)贊
          評(píng)論
          收藏
          分享

          手機(jī)掃一掃分享

          分享
          舉報(bào)
          <kbd id="afajh"><form id="afajh"></form></kbd>
          <strong id="afajh"><dl id="afajh"></dl></strong>
            <del id="afajh"><form id="afajh"></form></del>
                1. <th id="afajh"><progress id="afajh"></progress></th>
                  <b id="afajh"><abbr id="afajh"></abbr></b>
                  <th id="afajh"><progress id="afajh"></progress></th>
                  久久受| 男人天堂视频在线观看 | 成人无码操屄AV大片 | 欧美动态视频 | 亚洲九九九九九九 |