position定位(5種方式)

position 英[p??z??n] 屬性指定了元素的定位類型或悲。
屬性的五個值:
1藤为、static:默認值怪与,靜態(tài)定位,表示沒有定位缅疟,元素會按照正常的位置顯示分别,此時 top、bottom存淫、left 和 right 4 個定位屬性也不會被應用茎杂。
2、relative:相對定位纫雁,即相對于元素的正常位置進行定位煌往,您可以通過 top、right轧邪、bottom刽脖、left 這 4 個屬性來設置元素相對于正常位置的偏移量,在此過程中不會對其它元素造成影響忌愚。
3曲管、absolute:絕對定位,相對于第一個非 static 定位的父級元素進行定位硕糊,可以通過 top院水、right、bottom简十、left 這 4 個屬性來設置元素相對于父級元素位置的偏移量檬某。如果沒有滿足條件的父級元素,則會相對于瀏覽器窗口來進行定位螟蝙。使用絕對定位的元素不會對其它元素造成影響恢恼。
4、fixed:固定定位胰默,相對于瀏覽器的創(chuàng)建進行定位场斑,可以使用 top、right牵署、bottom漏隐、left 這 4 個屬性來定義元素相對于瀏覽器窗口的位置。使用固定定位的元素無論如何滾動瀏覽器窗口元素的位置都是固定不變的奴迅。
5青责、sticky:粘性定位,它是 relative 和 fixed 的結合體,能夠實線類似吸附的效果爽柒,當滾動頁面時它的效果與 relative 相同吴菠,當要滾動到屏幕之外時則會自動變成 fixed 的效果。

靜態(tài)定位:static 英[?st?t?k]

static 是 position 屬性的默認值浩村,表示沒有定位做葵,使用靜態(tài)定位的元素會按照元素正常的位置顯示,并且不會受到 top心墅、bottom酿矢、left、right 和 z-index 屬性的影響怎燥。示例代碼如下:

<!DOCTYPE html>
<html>
<head>
    <style>
        div{
            height: 100px;
            border: 1px solid black;
        }
        div.static {
            width: 130px;
            height: 50px;
            background-color: #CCC;
            line-height: 50px;
            text-align: center;
            position: static;
            top: 50px;
            left: 20px;
        }
    </style>
</head>
<body>
    <div>
        <div class="static">postiont: static;</div>
    </div>
</body>
</html>
104U46022-0[1].gif

相對定位:relative 英[?rel?t?v]

相對定位就是元素相對于自己默認的位置來進行位置上的調整瘫筐,您可以通過 top、bottom铐姚、left 和 right 四個屬性的組合來設置元素相對于默認位置在不同方向上的偏移量策肝。

104U424H-1[1].gif

<!DOCTYPE html>
<html>
<head>
    <style>
        div{
            border: 1px solid black;
        }
        div.static {
            width: 140px;
            height: 50px;
            background-color: #B3FF99;
            line-height: 50px;
            text-align: center;
            position: relative;
            top: 25px;
            left: 10px;
        }
        p {
            width: 100px;
            height: 100px;
            background-color: #CCC;
            margin: 0;
        }
    </style>
</head>
<body>
    <div>
        <div class="static">position: relative;</div>
        <p></p>
    </div>
</body>
</html>
104U43X5-2[1].gif

絕對定位:absolute 英[??bs?lu?t]

絕對定位就是元素相對于第一個非靜態(tài)定位(static)的父級元素進行定位,如果找不到符合條件的父級元素則會相對與瀏覽器窗口來進行定位隐绵。您同樣可以使用 top之众、bottom、left 和 right 四個屬性來設置元素相對于父元素或瀏覽器窗口不同方向上的偏移量依许。

104U46010-3[1].gif

圖:top棺禾、bottom、left峭跳、right 屬性在絕對定位中的使用
使用絕對定位的元素會脫離原來的位置膘婶,不再占用網頁上的空間。與相對定位相同蛀醉,使用絕對定位的元素同樣會與頁面中的其它元素發(fā)聲重疊悬襟,另外使用絕對定位的元素可以有外邊距,并且外邊距不會與其它元素的外邊距發(fā)生重疊滞欠。

<!DOCTYPE html>
<html>
<head>
    <style>
        div{
            border: 1px solid black;
            position: relative;
        }
        div.static {
            width: 150px;
            height: 50px;
            background-color: #B3FF99;
            line-height: 50px;
            text-align: center;
            position: absolute;
            bottom: 10px;
            right: 5px;
        }
        p {
            width: 100px;
            height: 100px;
            background-color: #CCC;
            margin: 0;
            text-align: center;
            line-height: 100px;
        }
    </style>
</head>
<body>
    <div>
        <div class="static">position: absolute;</div>
        <p>&lt;p&gt;</p>
    </div>
</body>
</html>
104U42506-4[1].gif

固定定位:fixed 英[f?kst]

固定定位就是將元素相對于瀏覽器窗口進行定位古胆,使用固定定位的元素不會因為瀏覽器窗口的滾動而移動肆良,就像是固定在了頁面上一樣筛璧,我們經常在網頁上看到的返回頂部按鈕就是使用固定定位實現(xiàn)的。

<!DOCTYPE html>
<html>
<head>
    <style>
        div{
            height: 500px;
        }
        p {
            width: 150px;
            height: 50px;
            background-color: #CCC;
            margin: 0;
            text-align: center;
            line-height: 50px;
            position: fixed;
            right: 20px;
            bottom: 20px;
        }
    </style>
</head>
<body>
    <div>
        <p class="fixed">position: fixed;</p>
    </div>
</body>
</html>
104U45956-5[1].png

粘性定位:sticky 英[?st?ki]

粘性定位與前面介紹的四種定位方式不太一下惹恃,它像是相對定位和固定定位的結合體夭谤,當滾動頁面時它的效果與相對定位相同,當元素滾動到一定程度時它又會呈現(xiàn)出固定定位的效果巫糙。比如一些網頁上的導航菜單朗儒,當頁面加載完成時它在自己默認的位置,當我們向下滾動頁面時它又會固定在頁面的最頂端。

<!DOCTYPE html>
<html>
<head>
    <style>
        div{
            height: 500px;
            position: relative;
        }
        p {
            width: 100%;
            height: 50px;
            margin: 0;
            text-align: center;
            line-height: 50px;
            background-color: #CCC;
        }
        p.sticky {
            background-color: blue;
            position: sticky;
            top:0px;
        }
    </style>
</head>
<body>
    <div>
        <p>1</p>
        <p>2</p>
        <p class="sticky">position: sticky;</p>
        <p>4</p>
        <p>5</p>
        <p>6</p>
        <p>7</p>
    </div>
</body>
</html>
104U4B28-6[1].png

在使用粘性定位時醉锄,需要注意以下幾點:
在設置position:sticky;時乏悄,必須再定義 top、bottom恳不、right檩小、left 四個屬性之一,否則只會處于相對定位的狀態(tài)烟勋;
使用粘性定位元素的父元素不能定義overflow:hidden或者overflow:auto屬性规求;
父元素的高度不能低于粘性定位元素的高度;
粘性定位的元素僅在其父元素內有效卵惦。

原文來源:[菜鳥教程](CSS Position(定位) | 菜鳥教程 (runoob.com)
)

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末阻肿,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子沮尿,更是在濱河造成了極大的恐慌丛塌,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,482評論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件畜疾,死亡現(xiàn)場離奇詭異姨伤,居然都是意外死亡,警方通過查閱死者的電腦和手機庸疾,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評論 2 382
  • 文/潘曉璐 我一進店門乍楚,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人届慈,你說我怎么就攤上這事徒溪。” “怎么了金顿?”我有些...
    開封第一講書人閱讀 152,762評論 0 342
  • 文/不壞的土叔 我叫張陵臊泌,是天一觀的道長。 經常有香客問我揍拆,道長渠概,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 55,273評論 1 279
  • 正文 為了忘掉前任嫂拴,我火速辦了婚禮播揪,結果婚禮上,老公的妹妹穿的比我還像新娘筒狠。我一直安慰自己猪狈,他們只是感情好,可當我...
    茶點故事閱讀 64,289評論 5 373
  • 文/花漫 我一把揭開白布辩恼。 她就那樣靜靜地躺著雇庙,像睡著了一般谓形。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上疆前,一...
    開封第一講書人閱讀 49,046評論 1 285
  • 那天寒跳,我揣著相機與錄音,去河邊找鬼竹椒。 笑死冯袍,一個胖子當著我的面吹牛,可吹牛的內容都是我干的碾牌。 我是一名探鬼主播康愤,決...
    沈念sama閱讀 38,351評論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼舶吗!你這毒婦竟也來了征冷?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 36,988評論 0 259
  • 序言:老撾萬榮一對情侶失蹤誓琼,失蹤者是張志新(化名)和其女友劉穎检激,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體腹侣,經...
    沈念sama閱讀 43,476評論 1 300
  • 正文 獨居荒郊野嶺守林人離奇死亡叔收,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 35,948評論 2 324
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了傲隶。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片饺律。...
    茶點故事閱讀 38,064評論 1 333
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖跺株,靈堂內的尸體忽然破棺而出复濒,到底是詐尸還是另有隱情,我是刑警寧澤乒省,帶...
    沈念sama閱讀 33,712評論 4 323
  • 正文 年R本政府宣布巧颈,位于F島的核電站,受9級特大地震影響袖扛,放射性物質發(fā)生泄漏砸泛。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,261評論 3 307
  • 文/蒙蒙 一蛆封、第九天 我趴在偏房一處隱蔽的房頂上張望唇礁。 院中可真熱鬧,春花似錦娶吞、人聲如沸垒迂。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽机断。三九已至,卻和暖如春绣夺,著一層夾襖步出監(jiān)牢的瞬間吏奸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評論 1 262
  • 我被黑心中介騙來泰國打工陶耍, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留奋蔚,地道東北人。 一個月前我還...
    沈念sama閱讀 45,511評論 2 354
  • 正文 我出身青樓烈钞,卻偏偏與公主長得像泊碑,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子毯欣,可洞房花燭夜當晚...
    茶點故事閱讀 42,802評論 2 345

推薦閱讀更多精彩內容