解析position定位

關於position定位(全部主流瀏覽器都支持 position 屬性),你們會聯想到relative和absolute,下面我就講一下relative和absolute分別是相對於誰進行定位的?瀏覽器

  在CSS佈局中,Position發揮着很是重要的做用,不少容器的定位是用Position來完成,有四個可選值,它們分別是:static、absolute、fixed、relative,這裏向你們描述一下它的使用。佈局

  absolute:生成絕對定位的元素,相對於最近一級的定位不是static的父元素來進行定位。學習

    使用position:absolute,可以很準確的將元素移動到你想要的位置,讓我將nav移動到頁面的右上角。咱們能夠這樣寫:對象

    nav{position:absolute;top:0;right:0;width:200px;}文檔

  fixed:也是生成絕對定位的元素,一般相對於瀏覽器窗口或frame進行定位。須要注意的是IE6並不支持此屬性。it

  relative:生成相對定位的元素,相對於其在普通流中的位置進行定位。io

    咱們須要明確一個概念,相對定位是相對於元素默認的位置的定位。class

  static:默認值。沒有定位,元素出如今正常的流中。容器

CSS中的定位:方法

  relative:相對定位,位置被設置爲 relative 的元素,可將其移至相對於其正常位置的地方,元素仍然處於正常文檔流當中,能夠經過left、top、right和bottom的CSS規則來改變元素所處的位置。

  absolute:絕對定位,位置設置爲 absolute 的元素,可定位於相對於包含它的元素的指定座標,元素脫離正常文檔流,能夠經過left、top、right和bottom的CSS規則來改變元素所處的位置。

  fixed:固定定位,位置被設置爲 fixed 的元素,可定位於相對於瀏覽器窗口的指定座標。此元素的位置可經過 "left"、"top"、"right" 以及"bottom" 屬性來規定。不論窗口滾動與否,元素都會留在那個位置。工做於 IE7(strict 模式)。

    position:fixed  相對於窗口的固定定位    

    所謂相對定位究竟是什麼意思呢,是基於哪裏的相對呢?咱們須要明確一個概念,相對定位是相對於元素默認的位置的定位。既然是相對的,咱們就須要設置不一樣的值來聲明定位在哪裏,top、bottom、left、right四個數值配合,來明確元素的位置。

    fixed是特殊的absolute,即fixed老是以body爲定位對象的,按照瀏覽器的窗口進行定位。

  static:默認。位置設置爲 static 的元素,它始終會處於頁面流給予的位置(static 元素會忽略任何 top、bottom、left 或 right 聲明)。

  !注意:不少網頁都是居中的,這樣,當對元素進行絕對定位的時候,在不一樣的分辨率下顯示會有誤差,這時,咱們能夠經過相似下面的方法來處理:

  <div style="position: relative;">

  <div style="position: absolute; top: 10px; left: 10px;"></div>

  </div>

  這就是我對position的理解,但願能幫到學習的你。

相關文章
相關標籤/搜索