首頁 > web前端 > css教學 > 主體

CSS 各種定位(position)方式的差異

高洛峰
發布: 2016-11-03 17:15:10
原創
1220 人瀏覽過

static:靜態定位是position的預設值,元素框正常生成,也就是沒有定位時的正常顯示。

  relative:相對定位

用法一:元素相對自身的原位置偏移某個距離,但是原本的空間依舊保留,表現為空白。

用法二:把一個元素設定為position: relative; 可以使該元素的子元素相對該元素絕對定位。

  absolute:絕對定位

 元素從文件流刪除,並相對於包含區塊定位。元素在原本的空間關閉。元素定位後產生一個區塊級框,不論它原來是行內元素還是區塊級元素。

   包含區塊:最近的position值不是static的祖先元素(區塊層級或行內),一般會指定一個元素作為絕對定位元素的包含區塊,將其position設為relative且沒有偏移。

  fixed:固定定位

  元素從文件流中刪除,並相對於瀏覽器視窗定位,因此不隨文件滾動而移動。元素在原本的空間關閉。元素定位後產生一個區塊級框,不論它原來是行內元素還是區塊級元素。與絕對定位的差異只是包含區塊不同。

 包含塊:瀏覽器視窗。

   absolute/fixed和float對比

    類似:元素都會從文件流刪除,但是依舊會影響佈局;都會產生一個區塊級框,無論原來是不是區塊級元素。

     區別:float的包含區塊是最近的區塊級祖先元素。

     偏移屬性:top/right/bottom/left,初始值是auto。

   採用position定位之後必須採用偏移屬性定義偏移量,也就是相對包含區塊的偏移。注意應用於position值不是static的元素。

   有時也需要定義width和heigth,但是可能會和偏移屬性的定義衝突,因為四個偏移屬性實際上已經定義了元素的大小。此時,根據width和left屬性定義左右,根據top和height屬性定義上下。

  內容溢出overflow: visible/ hidden/ scroll /auto/ inherit,初始值是visible。

     一個元素的大小固定,但是其內容放不下,就會導致溢出。 overflow控制溢出部分的可見(visible)、不可見(hidden)、滾動可見(scroll)。

       元素可見性visibility: visible/ hidden/ collapse/ inherit,初始值為visible。

    visibility:hidden和display:none的區別:visibility:hidden設定元素不可見,但是元素依舊會影響佈局,只是元素部分呈現為空白;display:none元素不顯示並且從文檔流中刪除,對文檔佈局沒有任何影響。



相關標籤:
來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板