【CSS】【11】CSS盒子的定位
<div class=”son”>Box-1</div>
</div>
{
background-color:#669999;
border:1px dashed #000000;
padding:10px;
}
.son
{
background-color:#CCCC00;
border:1px dashed #000000;
padding:10px;
}
從CSS上看沒有對盒子設定任何浮動屬性和定位屬性,所以頁面展示效果就是標準流下的巢狀效果。這種效果其實就是position屬性的預設值static的效果,static即為盒子position屬性的預設值,它表示盒子在標準流或浮動方式下的佈局。
修改.son程式碼:
.son
{
background-color:#CCCC00;
border:1px dashed #000000;
padding:10px;
position:relative;
left:30px;
top:30px;
}
頁面效果:
這裡設定Box-1相對於它原來位置向左和向下偏移了各30畫素,而不是相對於父div邊框,即效果圖中標出的白色雙向箭頭的距離,這點十分重要。所以relative常以標準的排版方式為基礎,然後使盒子相對於它在原來的標準位置偏移指定的距離。為了解釋清楚這件事,請看下圖:
在這個圖中,三個盒子均設定了浮動方式,由於對Box-2指定了position為relative,然後相對於它自己原來的位置向右下各偏移30畫素,所以產生了此效果,但在Box-3的眼中Box-2還在它原來的位置,而不是相對移動之後的位置。
二、absolute演示
HTML部分程式碼:
<div class=”father”>
<div>Box-1</div>
<div class=”son”>Box-2</div>
<div>Box-3</div>
</div>
CSS部分程式碼:
.father
{
background-color:#669999;
border:1px dashed #000000;
padding:10px;
}
.father div
{
background-color:#CCCC00;
border:1px dashed #000000;
padding:10px;
}
增加CSS程式碼:
.son
{
position:absolute;
top:0px;
right:0px;
}
頁面效果:
此時Box-2脫離了標準流,跑到了瀏覽器的右上角,那麼約對定位absolute就意味著相對於瀏覽器的定位呢?答案是NO。我們修改father的程式碼,增加一個定位屬性,但大小和位置不變:
.father
{
background-color:#669999;
border:1px dashed #000000;
padding:10px;
position:relative;
}
再看頁面效果:
此時會發現Box-2這次跑到了父div的右上角?這是為什麼呢?它是以它的包含框為基準,檢視的父親是否有設定定位屬性,若父親有定位屬性則以父親為參考進行移動,若父親沒有設定定位屬性就去檢視它的爺爺,依次類推,若所有的祖先均沒有設定定位屬性,則以瀏覽器為參考進行移動。
再強調一下對一個div設定為絕對定位,(1)它會脫離原來的標準流,其他的兄弟盒子則無視它的存在(2)以它的包含框為基準去檢視父類是否有定位屬性,以有定位屬性的祖先為參考進行移動,若祖先均無定位屬性則以瀏覽器為參考進行移動。
三、Fixed演示
HTML部分程式碼:
<div class=”father”>
<div>Box-1</div>
<div class=”son”>Box-2</div>
<div>Box-3</div>
</div>
CSS部分程式碼:
.father
{
background-color:#669999;
border:1px dashed #000000;
padding:10px;
}
.father div
{
background-color:#CCCC00;
border:1px dashed #000000;
padding:10px;
}
.son
{
position:fixed;
top:0px;
right:0px;
}
頁面效果:
此時故意把瀏覽器視窗拖的這樣小,然後向下拉動右側滾動條,發現Box-2始終在瀏覽器的右上角,所以Fixed表示固定定位,它和絕對定位類似,只是以瀏覽器視窗為基準進行定位。
大家瀏覽網頁時,常比較討厭的廣告始終佔據網頁的右側,去也去不掉,其定位就是如此。
本文轉自qingkechina 51CTO部落格,原文連結:http://blog.51cto.com/qingkechina/1261757,如需轉載請自行聯絡原作者
相關文章
- CSS盒子CSS
- css選擇器,盒子模型,定位,動畫CSS模型動畫
- 總結一下css中的盒子模型和position定位CSS模型
- CSS定位CSS
- CSS——定位CSS
- CSS盒子模型CSS模型
- CSS 盒子模型CSS模型
- CSS的定位:positionCSS
- CSS 盒子的邊距塌陷CSS
- CSS之盒子模型CSS模型
- CSS_定位CSS
- css之定位CSS
- CSS-定位CSS
- 6.css的定位CSS
- CSS盒子模型詳解CSS模型
- css學習-盒子模型CSS模型
- 關於 CSS 盒子模型CSS模型
- css 盒子溢位問題CSS
- CSS佈局-盒子模型CSS模型
- css定位詳解CSS
- CSS之定位PositionCSS
- css 定位器CSS
- CSS 定位詳解CSS
- css中背景定位的方法CSS
- css11 CSS RGB ColorsCSS
- 【WEB基礎】HTML & CSS 基礎入門(9)CSS盒子WebHTMLCSS
- CSS——把“可以動的盒子”更優雅地展示:② “居中”盒子CSS
- 總是記不住的css盒子模型CSS模型
- css內聯樣式的盒子模型CSS模型
- css盒子模型的屬性介紹CSS模型
- CSS position:sticky 粘性定位CSS
- CSS position: sticky 粘性定位CSS
- CSS基本佈局——定位CSS
- css 錨點定位 -- scrollIntoViewCSSView
- CSS position定位(fixed、sticky)CSS
- CSS #定位 #顯示方式CSS
- 淺談CSS中的Position(定位)CSS
- 【Hello CSS】第二章-CSS的邏輯屬性與盒子模型CSS模型
- css絕對定位和相對定位的差別CSS