CSS position屬性和實(shí)例應(yīng)用

描述
absolute 生成絕對定位的元素,相對于static定位以外的第一個(gè)父元素進(jìn)行定位。元素的位置通過"left""top""right"以及"bottom"屬性進(jìn)行規(guī)定。
fixed 生成絕對定位的元素,相對于瀏覽器窗口進(jìn)行定位。元素的位置通過"left""top""right"以及"bottom"屬性進(jìn)行規(guī)定。
relative 生成相對定位的元素,相對于洽談?wù)N恢眠M(jìn)行定位。因此,"left: 20"會(huì)向元素的left位置添加20像素。
static 默認(rèn)值。沒有定位,元素出現(xiàn)在正常流中(忽略top,bottom,left,right及z-index聲明)
inherit 規(guī)定從父元素繼承position屬性的值

如下是對position五個(gè)屬性的解釋:

描述
absolute 生成絕對定位的元素,相對于static定位以外的第一個(gè)父元素進(jìn)行定位。元素的位置通過"left""top""right"以及"bottom"屬性進(jìn)行規(guī)定。
fixed 生成絕對定位的元素,相對于瀏覽器窗口進(jìn)行定位。元素的位置通過"left""top""right"以及"bottom"屬性進(jìn)行規(guī)定。
relative 生成相對定位的元素,相對于洽談?wù)N恢眠M(jìn)行定位。因此,"left: 20"會(huì)向元素的left位置添加20像素。
static 默認(rèn)值。沒有定位,元素出現(xiàn)在正常流中(忽略top,bottom,left,right及z-index聲明)
inherit 規(guī)定從父元素繼承position屬性的值

其中absolute和relative是最常用的,fixed用的也比較多。
1.absolute(絕對定位)
absolute是生成覺對定位的元素,脫離了文本流(即在文檔中已經(jīng)不占據(jù)位置),參照瀏覽器的左上角通過top,right,bottom,left(簡稱TRBL) 定位??梢赃x取具有定位的父級對象(下文將說到relative與absolute的結(jié)合使用)或者body坐標(biāo)原點(diǎn)進(jìn)行定位,也可以通過z-index進(jìn)行層次分級。absolute在沒有設(shè)定TRBL值時(shí)是根據(jù)父級對象的坐標(biāo)作為始點(diǎn)的,當(dāng)設(shè)定TRBL值后則根據(jù)瀏覽器的左上角作為原始點(diǎn)。具體案例如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>position:absolute定位</title>
<style type="text/css">
    html,body,div{
                    margin:0;   
                    padding:0;  
                    list-style:none;
    }
    .center{
                margin:30px;
                border:#999999 solid 10px;
                width:400px;
                height:300px;
    }
    .div1{
            width:200px;
            height:200px;
            background:#0099FF;
            /*設(shè)定TRBL*/
            position:absolute;
            left:0px;
            top:0px;
    }
    .div2{
            width:400px;
            height:300px;
            font-size:30px;
            font-weight:bold;
            color:#fff;
            background:#FF0000;
    }
</style>
</head>

<body>
    <div class="center">
        <div class="div1"></div>
        <div class="div2">position:absolute定位測試</div>
    </div>
</body>
</html>

這段代碼產(chǎn)生的效果如下

image.png

這是設(shè)定TRBL之后的效果(設(shè)置TRBL以瀏覽器左上角為原點(diǎn)),當(dāng)沒有設(shè)置TRBL時(shí)(沒有設(shè)置TRBL是以父級對象的坐標(biāo)為原點(diǎn)),即將div1改成如下代碼時(shí):

.div1{
            width:200px;
            height:200px;
            background:#0099FF;
            /*沒有設(shè)定TRBL*/
            position:absolute;
    }

則效果如下:

image.png

relative(相對定位)
relative是相對的意思,顧名思義就是相對于元素本身在文檔中應(yīng)該出現(xiàn)的位置來移動(dòng)這個(gè)元素,可以通過TRBL來移動(dòng)元素的位置,實(shí)際上該元素依然占據(jù)文檔中原有的位置,只是視覺上相對原來的位置有移動(dòng)。具體案例如下:

<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>position:relative定位</title>
<style type="text/css">
    html,body,div{
                    margin:0;   
                    padding:0;  
                    list-style:none;
    }
    .center{
                margin:30px;
                border:#999999 solid 10px;
                width:400px;
                height:300px;
                background:#FFFF00;
    }
    .div1{
            width:200px;
            height:150px;
            background:#0099FF;
            position:relative;
            top:-20px;
            left:0px;
    }
    .div2{
            width:400px;
            height:150px;
            font-size:30px;
            font-weight:bold;
            color:#fff;
            background:#FF0000;
    }
</style>
</head>

<body>
    <div class="center">
        <div class="div1"></div>
        <div class="div2">position:relative定位測試</div>
    </div>
</body>
</html>

代碼產(chǎn)生的效果如下:

image.png
最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容