首頁 >web前端 >css教學 >css中定位position屬性的用法是什麼

css中定位position屬性的用法是什麼

coldplay.xixi
coldplay.xixi原創
2021-03-21 17:42:575308瀏覽

css中定位position屬性的用法:1、一般的標籤元素不加任何定位屬性都屬於靜態定位;2、絕對定位的元素從文檔流中拖出;3、相對定位元素不可層疊;4、固定定位與絕對定位類似,但它是相對於瀏覽器視窗定位,並且不會隨著捲軸進行滾動。

css中定位position屬性的用法是什麼

本教學操作環境:windows7系統、css3版,DELL G3電腦。

css中定位position屬性的用法:

#1、靜態定位(static)

一般的標籤元素不加任何定位屬性都屬於靜態定位,在頁面的最底層屬於標準流。

2、絕對定位(absolute)

絕對定位的元素從文件流中拖出,使用left、right、top、bottom等屬性相對於其最接近的一個最有定位設定的父級元素進行絕對定位,如果元素的父級沒有設定定位屬性,則依據body 元素左上角作為參考進行定位。絕對定位元素可層疊,層疊順序可由 z-index 屬性控制,z-index值為無單位的整數,大的在上面,可以有負值。

絕對定位的定位方法:

如果它的父元素設定了除static以外的定位,例如position:relative或position:absolute及position:fixed,那麼它就會相對於它的父元素來定位,位置透過left , top ,right ,bottom屬性來規定,

如果它的父元素沒有設定定位,那麼就得看它父元素的父元素是否有設定定位,

如果還是沒有就繼續向更高層的祖先元素類推,總之它的定位就是相對於設置了除static定位之外的定位的第一個祖先元素,

如果所有的祖先元素都沒有以上三種定位中的其中一種定位,那麼它就會相對於文檔body來定位(並非相對於瀏覽器窗口,相對於窗口定位的是fixed)。

<head>
<style type="text/css">
.box {
background: red;
width: 100px;
height: 100px;
float: left;
margin: 5px;
}
.two {
position: absolute;
top: 50px;
left: 50px;
}
</style>
</head>
<body>
<div class="box" >One</div>
<div class="box  two" >Two</div>
<div class="box" >Three</div>
<div class="box">Four</div>
</body>

將class="two"的div定位到距離的頂部和左側分別50px的位置。會改變其他元素的佈局,不會在這個元素本來位置留下空白。

3、相對定位(relative)

相對定位元素不可層疊,依據left、right、top、bottom等屬性在正常文件流中偏移自身位置。同樣可以用z-index分層設計。

<head>
<style type="text/css">
.box {
background: red;
width: 100px;
height: 100px;
float: left;
margin: 5px;
}
.two {
position: relative;
top: 50px;
left: 50px;
}
</style>
</head>
<body>
<div class="box" >One</div>
<div class="box  two" >Two</div>
<div class="box" >Three</div>
<div class="box">Four</div>
</body>

將class="two"的div定位到距離它本來位置的頂部和左側分別50px的位置。不會改變其他元素的佈局,會在這個元素本來位置留下空白。

4、固定定位(fixed)

固定定位與絕對定位類似,但它是相對於瀏覽器視窗定位,並且不會隨著捲軸進行滾動。

固定定位的最常見的一種用途是在頁面中建立一個固定頭部、固定腳部或固定側邊欄,不需要使用margin、border、padding。

相關學習推薦:css教學

以上是css中定位position屬性的用法是什麼的詳細內容。更多資訊請關注PHP中文網其他相關文章!

陳述:
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn