當元素的position屬性值為absolute時,這個元素就變成了絕對定位元素。絕對定位在幾種定位方法中使用最廣泛,這種方法能夠很精確地把元素移動到任意你想要的位置。
一個元素變成了絕對定位元素,這個元素就完全脫離正常文檔流了,絕對定位元素的前面或者後面的元素會認為這個元素並不存在,即這個元素浮於其他元素上面,它是獨立出來的。
什麼叫“脫離正常文檔流”,請參考“正常文檔流”這一節。
語法:
position:absolute; top:像素值; bottom:像素值; left:像素值; right:像素值;
說明:
“position:absolute;”是結合top、bottom、left和right這4個屬性一起使用的,其中“position:absolute;”使得元素成為絕對定位元素,接著使用top、bottom、left和right這4個屬性來設置元素相對浏覽器的位置。
現在,我們暫且可以這樣理解:CSS固定定位元素和CSS絕對定位元素的位置是相對於浏覽器而言,而CSS相對定位元素的位置是相對原始位置而言。
舉例:
在線測試
<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>CSS絕對定位</title>
<style type="text/css">
#father
{
padding:15px;
background-color:#0C6A9D;
border:1px solid silver;
}
#father div
{
padding:10px;
background-color:#FCD568;
border:1px dashed red;
}
#son2
{
/*在這裡添加son2的定位方式*/
}
</style>
</head>
<body>
<div id="father">
<div id="son1">box1</div>
<div id="son2">box2</div>
<div id="son3">box3</div>
</div>
</body>
</html>
在浏覽器預覽效果如下:
我們為第2個div元素son2添加如下代碼:
#son2
{
/*在這裡添加son2的定位方式*/
position:absolute;
top:0;
right:0;
}
在浏覽器預覽效果如下:
分析:
至此,我們已經把最重要的3種定位方式都學完了,在初學者階段,對於固定定位元素、相對定位元素和絕對定位元素,我們暫且這樣記憶:默認情況下,固定定位元素和絕對定位元素的位置是相對於浏覽器而言,而相對定位元素的位置是相對原始位置而言。
大部分人看到這裡就會疑惑了,“固定定位元素和絕對定位元素的位置是相對於浏覽器而言,而相對定位元素的位置是相對原始位置而言”這句話真的正確嗎?不正確!正確的描述要加一個前提→“默認情況下”。
在這裡,很多初學者會對各種定位元素的相對位置有很多的疑問,大家不要擔心,浮動與定位可以說是CSS中最靈活和最困難的知識點。不過在“CSS進階教程”中,我們會詳細而深入地去學習,到時候, 學友們就可以100%理解定位布局的本質。
教程寫到這的時候,看看時間,凌晨1點35分。額,為了咱親們,站長helicopter也算是“鞠躬盡瘁,死而後已”了。不啰嗦了,該睡了~~