CSS基本布局 定位

2021-09-30 01:27:42 字數 1013 閱讀 7026

css有三種基本的布局機制:標準流、浮動和定位。定位就是確定元素的位置,利用top/right/bottom/left這四個偏移屬性,可以準確地定義元素框相對於其正常位置應該出現的位置。top的優先順序要高於bottom,left的優先順序要高於right

相對定位:相對於元素原有位置的定位。相對定位並沒有脫離文件流,因此對於它的位置設定不會影響其它兄弟元素

絕對定位跟相對定位不同。它脫離了文件流,影響後面的兄弟元素。

1)相對body定位

在絕對定位中,相對於body元素定位的。設定top的時候,根據body的頂邊定位。設定bottom的時候,相對於螢幕的底邊定  位。left和right是相對於body左右邊定位的。

2)就近原則

巢狀的盒子設定了絕對定位,它會尋找離他最近的設定了定位的祖先元素(絕對定位,相對定位,固定定位),從而來定義相對的偏移量。

也就是說,此時不再以body定位,而是相對設定了定位的祖先元素定位。它是相對于父元素的padding頂點(包含padding)進行定位設定的。設定border會影響定位的結果

3)display失效

不論是行內元素,還是塊元素,設定了絕對定位,display屬性失效;不論是塊元素還是行內元素,都可以直接設定寬高

4)壓蓋現象

元素設定了絕對定位,此時會有壓蓋現象,後面的元素會顯示在前面的元素上面,後面還會繼續討論壓蓋現象

固定定位也是脫離文件流的定位,跟絕對定位很像。固定定位是相對於瀏覽器視窗的定位。脫離文件流,會影響兄弟元素(後面的兄弟元素會頂上來),不論是塊元素,還是行內元素,一旦固定定位,可以直接設定寬高;display屬性失效;可以通過偏移量設定盒子的寬高(沒有設定width或者height)

下面是定位的應用,可以在github上獲得**:

效果如下:

CSS定位布局

絕對定位 如果想為元素設定層模型中的絕對定位,需要設定position absolute 表示絕對定位 這條語句的作用將元素從文件流中拖出來,然後使用left right top bottom屬性相對於其最接近的乙個具有定位屬性的父包含塊進行絕對定位。如果不存在這樣的包含塊,則相對於body元素,即...

css布局 定位

1 為什麼需要定位?某個元素可以自由的在乙個盒子內移動位置,並且壓住其他盒子 滾動視窗時,盒子固定在某個位置 2 應用 下拉列表 模態框 web應用程式的一些基本效果 3 本質 將元素徹底從文件流中移走。允許將元素放在螢幕的任意位 置,還可以將乙個元素放到另乙個元素的前面或者後面,彼此重疊。按照定位...

css 定位布局

文件流 文件流,是指盒子按照html標籤編寫的順序依次從上到下,從左到右排列。塊元素佔一行,行內元素在一行之內從左到在排列,先寫的先排列,後寫的排在後面,每個盒子都佔據自己的位置。關於定位 可以使用css的 position 屬性來設定元素的定位型別,position 設定項如下 1 relativ...