該如何正確的使用position屬性它的作用是什么?_Div+CSS教程

      編輯Tag賺U幣
      教程Tag:暫無Tag,歡迎添加,賺取U幣!
        
        Position的英文原意是指位置、職位、狀態。也有安置的意思。在CSS布局中,Position發揮著非常重要的作用,很多容器的定位是用Position來完成。
        Position屬性有四個可選值,它們分別是:static、absolute、fixed、relative。我們下面來共同學習它們的不同的用法,在學習中我們應該去思考在什么布局情況下,應該使用它們其中的哪一種。
        更多關于Position屬性的資料請參考這里。

        position:static 無定位
        該屬性值是所有元素定位的默認情況,在一般情況下,我們不需要非凡的去聲明它,但有時候碰到繼續的情況,我們不愿意見到元素所繼續的屬性影響本身,從而可以用position:static取消繼續,即還原元素定位的默認值。
        如:#nav { position:static; }

        position:absolute 絕對定位
        使用position:absolute,能夠很準確的將元素移動到你想要的位置,讓我將nav移動到頁面的右上角。我們可以這樣寫:nav { position:absolute; top:0; right:0; width:200px; }
        使用絕對定位的nav層前面的或者后面的層會認為這個層并不存在,也就是在z方向上,它是相對獨立出來的,絲毫不影響到其它z方向的層。所以position:absolute用于將一個元素放到固定的位置很好用,但是假如需要層相對于四周的層來確定位置就無能為力了。只能用下面討論到的相對定位了。
        這里有個Win IE的bug需要提到,就是假如為絕對定位的元素定義一個相對的寬度,那么在IE下它的寬度取決于父元素的寬度而不是整個頁面的寬度。

        position:fixed 相對于窗口的固定定位
        這個定位屬性值是什么意思呢?元素的定位方式同absolute類似,但它的包含塊是視區本身。在屏幕媒體如WEB瀏覽器中,元素在文檔滾動時不會在瀏覽器視察中移動。例如,它答應框架樣式布局。在頁式媒體如打印輸出中,一個固定元素會出現于第一頁的相同位置。這一點可用于生成流動標題或腳注。我們也見過相似的效果,但大都數效果不是通過CSS來實現了,而是應用了JS腳本。
        請非凡注重,IE6不支持CSS中的position:fixed屬性。真的非常遺憾,要不然我們就可以試試這種酷酷的效果了。

        position:relative 相對定位
        所謂相對定位到底是什么意思呢,是基于哪里的相對呢?我們需要明確一個概念,相對定位是相對于元素默認的位置的定位。既然是相對的,我們就需要設置不同的值來聲明定位在哪里,top、bottom、left、right四個數值配合,來明確元素的位置。假如要讓nav層向下移動20px,左移40px:
        我們可以這樣寫:#nav { position:relative; top:50px; left:50px; }
      但您需要注重下面的情況,相對定位緊隨他的層woaicss是不會出現在nav的下方,而是和nav發生一定的重疊!


        我們看下面的代碼運行效果。

      div css xhtml xml 代碼調試框 代碼調試框 [www.wf0088.com]

      [ 可先修改部分代碼 再運行查看效果 ]

        由此可知position:relative并不是很好用的哦,nav已經移走了,相對于原來的位置,向右向左各移了50px。但我們的另一個容器woaicss什么也沒有察覺,當作nav是在原來的位置上(即0 0的位置,而不是50 50),不依不饒的緊跟在nav的后面。大家在使用時要注重方法與總結經驗。
        

      來源:無憂整理//所屬分類:Div+CSS教程/更新時間:2007-02-01
      相關Div+CSS教程