您好,登錄后才能下訂單哦!
小編給大家分享一下CSS定位position的多種方式以及不同方式之間的區別是什么,希望大家閱讀完這篇文章后大所收獲,下面讓我們一起去探討吧!
在進行前端布局的時候,我們經常會用到定位,定位是CSS中重要的一部分,定位是用定位屬性position來進行定位的,position的值也有很多,具體它有如下幾個屬性值。常見的屬性有如下所示:
值描述
absolute 生成絕對定位的元素,相對于static定位以外的第一個父元素進行定位。元素的位置通過 "left", "top", "right" 以及 "bottom" 屬性進行規定。
fixed 生成絕對定位的元素,相對于瀏覽器窗口進行定位。元素的位置通過 "left", "top", "right" 以及 "bottom" 屬性進行規定。
relative 生成相對定位的元素,相對于其正常位置進行定位。因此,"left:20" 會向元素的 LEFT 位置添加 20 像素。
static 默認值。沒有定位,元素出現在正常的流中(忽略 top, bottom, left, right 或者 z-index 聲明)。
inherit 規定應該從父元素繼承 position 屬性的值。
首先,我們這里用的是標準盒子模型來講,所以大家在理的時候必需把它看成一個盒子或者一個框。我們先來學習第一個默認參數static。
static:靜態定位是position的默認值,元素框正常生成,也就是沒有定位時的正常顯示。
absolute:絕對定位
元素從文檔流刪除,并相對于包含塊定位。元素在原本的空間關閉。元素定位后生成一個塊級框,不論它原來是行內元素還是塊級元素。
這里的包含塊是指:最近的position值不是static的祖先元素(塊級或行內),一般會指定一個元素作為絕對定位元素的包含塊,將其position設置為relative而且沒有偏移。
fixed:固定定位
元素脫離文本流,從普通文本中刪除,并相對于瀏覽器視窗定位,因此不隨文檔滾動而移動。元素在原本的空間關閉。元素定位后生成一個塊級框,不論它原來是行內元素還是塊級元素。與絕對定位的區別僅僅是包含塊不同。包含塊:瀏覽器視窗。
relative:相對定位。相對定位,最常見的使用方式有如下兩種:
使用方法一:元素相對自身的原位置偏移某個距離,但是原本的空間依舊保留,表現為空白。
使用方法二:把一個元素設置為position: relative; 可以使該元素的子元素相對該元素絕對定位。
absolute/fixed和float對比
相同之處:元素都會脫離文本流,從普通文本中刪除,但是依舊會影響布局;都會生成一個塊級框,無論原來是不是塊級元素。
不同之處:float的包含塊是最近的塊級祖先元素。
設置偏移屬性:top/right/bottom/left,初始值是auto。
采用position定位之后必須采用偏移屬性定義偏移量,也就是相對包含塊的偏移。在使用的時候需要注意的是:定義偏移量的元素應為position值不是static的元素。
有時也需要定義width和heigth,但是可能會和偏移屬性的定義沖突,因為四個偏移屬性實際上已經定義了元素的大小。此時,根據width和left屬性定義左右,根據top和height屬性定義上下。
CSS中的別一個屬性。那就內容溢出:overflow
通常內容溢出屬性有如下幾個值:
overflow: visible/ hidden/ scroll /auto/ inherit
overflow初始值是visible。
overflow就是咱們常用在:如果一個元素的大小固定,但是其內容放不下,就會導致溢出。overflow控制溢出部分的可見(visible)、不可見(hidden)、滾動可見(scroll)。
元素可見性visibility: visible/ hidden/ collapse/ inherit,初始值是visible。
看完了這篇文章,相信你對CSS定位position的多種方式以及不同方式之間的區別是什么有了一定的了解,想了解更多相關知識,歡迎關注億速云行業資訊頻道,感謝各位的閱讀!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。