CSS中的position

來源:互聯網
上載者:User

css中的position的relative和absolute

預設的屬性值都是static,靜態。就不用多說了。最關鍵的是
relative(相對)以及absolute(絕對)。
往往我們如果是COPY別人的代碼,會把absolute屬性與left、top配合起來製作相關的“懸浮層”效果。然而有時候我們需要針對某一個容器的懸浮效果,而不是針對視窗的。這時候通過高度、寬度的計算不但麻煩,而且幾乎無法完美實現效果。我一開始也無能為力,後來發現只要把其上一級的樣式屬性position設定為relative就可以了。

也就是說,position的屬性值的效果,直接受其容器樣式中position屬性值影響。
例如如下A-B的嵌套結構

<div id="A">
<div id="B">
</div>
</div>

當A的position為relative時,B的position為absolute才有效。這時候left:0、top:0就不再針對視窗文檔,而是針對id為A的這個div了。

這樣在開發一些基於B/S應用程式的時候,就能很方便的添加一些UI元素,例如某一個活動層的關閉按鈕等。

轉自:http://www.sostips.com/blog/index.php?load=read&id=36

區分CSS中position定位屬性absolute與relative

很多朋友問過我absolute與relative怎麼區分,怎麼用?我們都知道absolute是絕對位置,relative是相對定位,但是這個絕對與相對是什麼意思呢?絕對是什麼地方的絕對,相對又是相對於什麼地方而言的呢?那他們又有什麼樣的特性,可以做出什麼樣的效果呢?關於兩者之間又有什麼樣的技巧呢?下面我們就來一一解讀。

Absolute,CSS中的寫法是:position:absolute; 他的意思是絕對位置,他是參照瀏覽器的左上方,配合TOP、RIGHT、BOTTOM、LEFT(下面簡稱TRBL)進行定位,在沒有設定TRBL,預設依據父級的做標原始點為原始點。如果設定TRBL並且父級沒有設定position屬性,那麼當前的absolute則以瀏覽器左上方為原始點進行定位,位置將由TRBL決定。

 

 

 

一般來講,網頁置中的話用Absolute就容易出錯,因為網頁一直是隨著解析度的大小自動適應的,而Absolute則會以瀏覽器的左上方為原始點,不會應為解析度的變化而變化位置。很多人出錯就在於這點上出錯。而網頁居左其特性與Relative很相似,但是還是有本質的區別的。

Relative,CSS中的寫法是:position:relative;  他的意思是絕對相對定位,他是參照父級的原始點為原始點,無父級則以BODY的原始點為原始點,配合TRBL進行定位,當父級內有padding等CSS屬性時,當前級的原始點則參照父級內容區的原始點進行定位。

 

 

 

有時我們還需要依靠z-index來設定容器的上下關係,數值越大越在最上面,數值範圍是自然數。當然有一點要注意,父子關係是無法用z-index來設定上下關係的,一定是子級在上父級在下。

轉自:http://www.77zy.com/article/article_225_1.html

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.