HTML定位

定位

  • position屬性可以控制Web瀏覽器如何以 及在何處顯示特定的元素。
  • 可以使用position屬性把一個元素放置到網(wǎng) 頁中的任何位置胖齐。
  • 可選值:
  • static(默認(rèn))
  • relative(相對)
  • absolute(絕對)
  • fixed(固定)

相對定位relative

  • 每個元素在頁面的文檔流中都有一個自然位置。相 對于這個位置對元素進行移動就稱為相對定位嵌牺。周 圍的元素完全不受此影響挨稿。
  • 當(dāng)將position屬性設(shè)置為relative時,則開啟了元素 的相對定位水由。
  • 當(dāng)開啟了相對定位以后,可以使用top赛蔫、right砂客、 bottom、left四個屬性對元素進行定位

特點

  • 如果不設(shè)置元素的偏移量呵恢,元素位置不會發(fā)生改變鞠值。
  • 相對定位不會使元素脫離文本流。元素在文本流中 的位置不會改變渗钉。
  • 相對定位不會改變元素原來的特性彤恶。
  • 相對定位會使元素的層級提升,使元素可以覆蓋文 本流中的元素晌姚。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>相對定位</title>
    <style type="text/css">
        .box1{
            height: 200px;
            background-color: red;
            position: relative;
        }
        .box2{
            width: 200px;
            height: 200px;
            background-color: yellow;
            /*
            定位:
                - 定位指的就是將指定的元素擺放到頁面的任意位置
                    通過定位可以任意的擺放元素
                - 通過position屬性來設(shè)置元素的定位
                -可選值:
                    static:默認(rèn)值粤剧,元素沒有開啟定位
                    relative:開啟元素的相對定位
                    absolute:開啟元素的絕對定位
                    fixed:開啟元素的固定定位(也是絕對定位的一種)
            */
            /*
            當(dāng)元素的position屬性設(shè)置為relative時歇竟,則開啟了元素的相對定位
                1.當(dāng)開啟了元素的相對定位以后挥唠,而不設(shè)置偏移量時,元素不會發(fā)生任何變化
                2.相對定位是相對于元素在文檔流中原來的位置進行定位
                3.相對定位的元素不會脫離文檔流
                4.相對定位會使元素提升一個層級
                5.相對定位不會改變元素的性質(zhì)焕议,塊還是塊宝磨,內(nèi)聯(lián)還是內(nèi)聯(lián)
            */
            position: relative;
            /*
            當(dāng)開啟了元素的定位(position屬性值是一個非static的值)時,可以通過left right top bottom四個屬性來設(shè)置元素的偏移量
                left:元素相對于其定位位置的左側(cè)偏移量
                right:元素相對于其定位位置的右側(cè)偏移量
                top:元素相對于其定位位置的上邊的偏移量
                bottom:元素相對于其定位位置下邊的偏移量
            通常偏移量只需要使用兩個就可以對一個元素進行定位盅安,
            一般選擇水平方向的一個偏移量和垂直方向的偏移量來為一個元素進行定位
            */
            left: 100px;
            top: 200px;
        }
        .box3{
            width: 200px;
            height: 200px;
            background-color: yellowgreen;
        }

        .s1{
            position: relative;
            width: 200px;
            height: 200px;
            background-color: yellow;
        }
    </style>
</head>
<body>
    <div class="box1"></div>
    <div class="box2"></div>
    <div class="box3"></div>

    <span class="s1">我是一個span</span>
</body>
</html>

絕對定位absolute

  • 絕對定位指使元素相對于html元素或離他最近 的祖先定位元素進行定位唤锉。
  • 當(dāng)將position屬性設(shè)置為absolute時,則開啟 了元素的絕對定位别瞭。
  • 當(dāng)開啟了絕對定位以后窿祥,可以使用top、right蝙寨、 bottom晒衩、left四個屬性對元素進行定位嗤瞎。

絕對定位的特點

  • 絕對定位會使元素完全脫離文本流。
  • 絕對定位的塊元素的寬度會被其內(nèi)容撐開听系。
  • 絕對定位會使行內(nèi)元素變成塊元素贝奇。
  • 一般使用絕對定位時會同時為其父元素指定一 個相對定位,以確保元素可以相對于父元素進 行定位靠胜。

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>絕對定位</title>
    <style type="text/css">
        .box1{
            width: 200px;
            height: 200px;
            background-color: red;
        }
        .box2{
            width: 200px;
            height: 200px;
            background-color: yellow;
            /*
            當(dāng)position屬性值設(shè)置為absolute時掉瞳,則開啟了元素的絕對定位

            絕對定位:
                1.開啟絕對定位,會使元素脫離文檔流
                2.開啟絕對定位以后浪漠,如果不設(shè)置偏移量陕习,則元素的位置不會發(fā)生變化
                3.絕對定位是相對于離他最近的、開啟了定位的祖先元素進行定位的(一般情況郑藏,開啟了子元素的絕對定位衡查,都會同時開啟父元素的相對定位)
                    如果所有的祖先元素都沒有開啟定位,則會相對于瀏覽器窗口進行定位
                4.絕對定位會使元素提升一個層級
                5.絕對定位會改變元素的性質(zhì):
                    內(nèi)聯(lián)元素變成塊元素必盖,
                    塊元素的寬度和高度默認(rèn)都被內(nèi)容撐開
            */
            position: absolute;
            /*left: 100px;
            top: 100px;*/
        }
        .box3{
            width: 300px;
            height: 300px;
            background-color: yellowgreen;
        }
        .box4{
            width: 300px;
            height: 300px;
            background-color: orange;
            /*開啟box4的相對定位*/
            /*position: relative;*/
        }
        .s1{
            width: 100px;
            height: 100px;
            background-color: yellow;
            /*開啟絕對定位*/
            position: absolute;
        }
    </style>
</head>
<body>
    <div class="box1"></div>
    <div class="box5">
        <div class="box4">
            <div class="box2"></div>
        </div>
    </div>
    <div class="box3"></div>

    <span class="s1">我是一個span</span>
</body>
</html>

固定定位fixed

  • 固定定位的元素會被鎖定在屏幕的某個位置上拌牲,當(dāng) 訪問者滾動網(wǎng)頁時,固定元素會在屏幕上保持不動歌粥。
  • 當(dāng)將position屬性設(shè)置為fixed時塌忽,則開啟了元素的 固定定位。
  • 當(dāng)開啟了固定定位以后失驶,可以使用top土居、right、
    bottom嬉探、left四個屬性對元素進行定位擦耀。
  • 固定定位的其他特性和絕對定位類似。
  • 對當(dāng)前窗口進行定位(四個角)

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>固定定位</title>
    <style type="text/css">
        .box1{
            width: 200px;
            height: 200px;
            background-color: red;
        }
        .box2{
            width: 200px;
            height: 200px;
            background-color: yellow;
            /*
            當(dāng)元素的position屬性設(shè)置fixed時涩堤,則開啟了元素的固定定位
            固定定位也是一種絕對定位眷蜓,它的大部分特點都和絕對定位一樣
            不同的是:
                固定定位永遠(yuǎn)都會相對于瀏覽器窗口進行定位
                固定定位會固定在瀏覽器窗口某個位置,不會隨滾動條滾動

            IE6不支持固定定位
            */
            position: fixed;
            left: 0px;
            top: 0px;
        }
        .box3{
            width: 200px;
            height: 200px;
            background-color: yellowgreen;
        }
    </style>
</head>
<body style="height: 5000px;">
    <div class="box1"></div>

    <div class="box4" style="width: 300px; height: 300px; background-color: orange; position: relative;">
        <div class="box2"></div>
    </div>

    <div class="box3"></div>
</body>
</html>

z-index層級

  • 當(dāng)元素開啟定位以后就可以設(shè)置z-index這 個屬性胎围。
  • 這個屬性可以提升定位元素所在的層級吁系。
  • z-index可以指定一個整數(shù)作為參數(shù),值越 大元素顯示的優(yōu)先級越高白魂,也就是z-index 值較大的元素會顯示在網(wǎng)頁的最上層汽纤。
  • 父元素的層級再高,也不會蓋住子元素

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>元素的層級</title>
    <style type="text/css">
        .box1{
            width: 200px;
            height: 200px;
            background-color: red;
            position: relative;
            z-index: 2;
            opacity: 0.5;
            filter: alpha(opacity=50);
        }
        .box2{
            width: 200px;
            height: 200px;
            background-color: yellow;
            /*開啟絕對定位*/
            position: absolute;
            /*設(shè)置偏移量*/
            top: 100px;
            left: 100px;
            /*
            如果定位元素的層級是一樣福荸,則下邊的元素會蓋住上邊的
            通過z-index屬性可以用來設(shè)置元素的層級
            可以為z-index指定一個正整數(shù)作為值蕴坪,該值將會作為當(dāng)前元素的層級,層級越高敬锐,越優(yōu)先顯示
            
            對于沒有開啟定位的元素不能使用z-index
            */
            z-index: 25;
            opacity: 0.5;
            filter: alpha(opacity=50);
        }
        .box3{
            width: 200px;
            height: 200px;
            background-color: yellowgreen;
            /*position: relative;
            z-index: 3;*/
            position: absolute;
            top: 200px;
            left: 200px;
            z-index: 30;
            /*
            設(shè)置元素的透明背景
            opacity可以用來設(shè)置元素背景的透明背传,它需要一個0-1之間的值
                0 表示完全透明
                1 表示完全不透明
                0.5 表示半透明
            */
            opacity: 0.5;

            /*
            opacity屬性在IE8及以下的瀏覽器中不支持
            IE8及以下的瀏覽器需要使用如下屬性代替
                alpha(opacity=透明度)
            透明度捆等,需要一個0-100之間的值
                0 表示完全透明
                100 表示完全不透明
                50 半透明
            這種方式支持IE6,但是這種效果在IE Tester中無法測試
            */
            filter: alpha(opacity=50);
        }
        .box4{
            width: 200px;
            height: 200px;
            background-color: orange;
            /*開啟相對定位*/
            position: relative;
            /*父元素的層級再高续室,也不會蓋住子元素*/
            z-index: 20;

            top: 500px;
        }
        .box5{
            width: 100px;
            height: 100px;
            background-color: skyblue;
            /*開啟絕對定位*/
            position: absolute;
            z-index: 10;
        }
    </style>
</head>
<body>
    <div class="box1"></div>

    <div class="box2"></div>

    <div class="box3"></div>

    <div class="box4">
        <div class="box5"></div>
    </div>
</body>
</html>
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末栋烤,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子挺狰,更是在濱河造成了極大的恐慌明郭,老刑警劉巖,帶你破解...
    沈念sama閱讀 210,914評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件丰泊,死亡現(xiàn)場離奇詭異薯定,居然都是意外死亡,警方通過查閱死者的電腦和手機瞳购,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,935評論 2 383
  • 文/潘曉璐 我一進店門话侄,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人学赛,你說我怎么就攤上這事年堆。” “怎么了盏浇?”我有些...
    開封第一講書人閱讀 156,531評論 0 345
  • 文/不壞的土叔 我叫張陵变丧,是天一觀的道長。 經(jīng)常有香客問我绢掰,道長痒蓬,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,309評論 1 282
  • 正文 為了忘掉前任滴劲,我火速辦了婚禮攻晒,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘班挖。我一直安慰自己鲁捏,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 65,381評論 5 384
  • 文/花漫 我一把揭開白布聪姿。 她就那樣靜靜地躺著碴萧,像睡著了一般乙嘀。 火紅的嫁衣襯著肌膚如雪末购。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 49,730評論 1 289
  • 那天虎谢,我揣著相機與錄音盟榴,去河邊找鬼。 笑死婴噩,一個胖子當(dāng)著我的面吹牛擎场,可吹牛的內(nèi)容都是我干的羽德。 我是一名探鬼主播,決...
    沈念sama閱讀 38,882評論 3 404
  • 文/蒼蘭香墨 我猛地睜開眼迅办,長吁一口氣:“原來是場噩夢啊……” “哼宅静!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起站欺,我...
    開封第一講書人閱讀 37,643評論 0 266
  • 序言:老撾萬榮一對情侶失蹤姨夹,失蹤者是張志新(化名)和其女友劉穎,沒想到半個月后矾策,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體磷账,經(jīng)...
    沈念sama閱讀 44,095評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 36,448評論 2 325
  • 正文 我和宋清朗相戀三年贾虽,在試婚紗的時候發(fā)現(xiàn)自己被綠了逃糟。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 38,566評論 1 339
  • 序言:一個原本活蹦亂跳的男人離奇死亡蓬豁,死狀恐怖绰咽,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情地粪,我是刑警寧澤剃诅,帶...
    沈念sama閱讀 34,253評論 4 328
  • 正文 年R本政府宣布,位于F島的核電站驶忌,受9級特大地震影響矛辕,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜付魔,卻給世界環(huán)境...
    茶點故事閱讀 39,829評論 3 312
  • 文/蒙蒙 一聊品、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧几苍,春花似錦翻屈、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,715評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至刽宪,卻和暖如春厘贼,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背圣拄。 一陣腳步聲響...
    開封第一講書人閱讀 31,945評論 1 264
  • 我被黑心中介騙來泰國打工嘴秸, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人。 一個月前我還...
    沈念sama閱讀 46,248評論 2 360
  • 正文 我出身青樓岳掐,卻偏偏與公主長得像凭疮,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子串述,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 43,440評論 2 348

推薦閱讀更多精彩內(nèi)容

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案执解? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補...
    _Yfling閱讀 13,734評論 1 92
  • 定位 position屬性可以控制web瀏覽器如何以及在何處顯示特定的元素「傩铮可以使用position屬性把一個元素...
    鬼會畫符閱讀 294評論 0 0
  • 定位的四種方式 1材鹦、默認(rèn)定位:static 其沒有top/bottom/left/right屬性 2、固定定位:f...
    石子1110閱讀 434評論 0 1
  • position:relative(相對定位) position:relative; 相對定位 position...
    小小彭007閱讀 263評論 0 0
  • 從昌吉市區(qū)尤泽,驅(qū)車三個半小時的路程,我和指揮部同志一行來到準(zhǔn)東開發(fā)區(qū)五彩灣派出所规脸,看望來自泉州石獅的民警小李子坯约。 小...
    孝愛義恩閱讀 326評論 0 0