浮動 定位 以及其區別

2022-08-17 08:06:11 字數 2416 閱讀 1022

浮動

元素的浮動是指設定了浮動屬性的元素會脫離標準普通

流的控制,移動到其父元素中指定位置的過程。 

語法: float :

left

right

none(預設) 

注意:1. 浮動的元素要有父元素

2. 浮動後的元素類似元素行內塊元素,即使行內元

素浮動後也可以設定寬高.(類似不代表是,浮動後的盒子可以設定寬高,但是不能用行內塊的方式讓盒子居中,比 如:給浮動的盒子父元素新增 text-algin :center ;是不起作用的;需要給盒子margin才能調整其位置) 

3. 浮動的元素會脫離文件流,但是沒有脫離文字流   

浮動帶來的影響:

父元素高度塌陷 : 子元素浮動,父元素沒有設定高,子元素

不能把父元素的高給撐開,導致父元素沒有高度,這種現

象叫父元素高度塌陷 .

清除浮動

1.加固定的高

缺點:不靈活

2.額外標籤法

在父元素的末尾加乙個空div, 給父元素設定

clear:left/right/both

優點: 通俗易懂,書寫方便

缺點: 新增許多無意義的標籤,結構化較差。

3.父級新增overflow屬性方法

在父元素身上設定 : 除了visible以外的其他overflow

的值都可以 , overflow:hidden/scroll/ auto

原因: 是overflow觸發了bfc, 在計算bfc高度的時

候,浮動的子元素的高度也計算在內

優點:**簡潔 

缺點 :無法顯示需要溢位的元素

4.使用after偽元素清除浮動

優點 : 結構語義化正確

缺點 : 由於ie6­7不支援:after,使用 zoom:1

1

.clearfix:after

6.clearfix

定位

1.postion: static 預設值 靜態定位

2.postion : relative : 相對定位

特點 : 不脫離文件流 ,以自身的位置來定位的

應用場景 :

微調元素

做絕對定位的參考,子絕父相

3.position:fixed : 固定定位

不管怎麼滾動滾動條,始終固定在某個位置 

特點 : 脫離了文件流,以瀏覽器視窗來定位的

4.position:absolute : 絕對定位

特點 : 脫離了文件流, 以最近已定位的」父元素」的位置來

說的,如果父元素都沒有定位,以html的位置來說的

備註 :已定位的」父元素」可以是 絕對定位/ 相對定位/固

定定位,子絕父相用的最多

方向關鍵字

left     : 正值是向右走的 負值往左走

top    : 正值是向下走的  負值往下走

right   : 正值是向左走的  負值往右走

bottom    : 正值是向上走的  負值往下走

注意: static定位身上不能用方向關鍵字

脫離文件流的元素

1.固定定位

2.絕對定位

3.浮動 

特點 : 類似於行內塊元素,如果不設定寬高,它的寬高是由

內容撐開的,即使是行內元素,可以設定寬高

如何讓定位的盒子垂直居中:

1

78

浮動定位區別

css2中能夠使標籤脫離文件流的屬性有: 

float:left/right; 

postion:absolute/fixed;

float脫離文件流時,其他盒子會無視這個標籤,但其他

盒子內的文字、、表單標籤依然會為這個標籤讓出

位置,環繞在周圍( 脫離文件流,不脫離文字流 )。

position脫離文件流的標籤,其他盒子完全無視它,包括

標籤內部的文字、、表單標籤( 既脫離文件流,又脫離文字流 )

注意:所有的標籤都能夠使用以上屬性,脫離文件流之後

1. 不再區分塊級和行內標籤,類似行內塊元素。 

2. 寬高預設由內容撐開,可以設定width和height及所有

盒模型屬性,即使行內元素也可以設定寬高

css 浮動 相對定位 絕對定位區別

html是按照檔案流 普通流 的方式載入的,但是全部是普通流的話,很多好看的樣式是實現不了的,所以出現了浮動,相對定位,絕對定位的概念。一 首先,按照普通流和非普通流來分類 普通流 就是按照上下左右的順序一行一行排列的,長度不夠就會自動擠到下一行。非普通流 顧名思義就是脫離普通流的,在普通流上面是不...

css 浮動 相對定位 絕對定位區別

html是按照檔案流 普通流 的方式載入的,但是全部是普通流的話,很多好看的樣式是實現不了的,所以出現了浮動,相對定位,絕對定位的概念。一 首先,按照普通流和非普通流來分類 普通流 就是按照上下左右的順序一行一行排列的,長度不夠就會自動擠到下一行。非普通流 顧名思義就是脫離普通流的,在普通流上面是不...

浮動和定位的區別

動 float 和絕對定位 position absolute 相同點 1 都是漂起來 離開原來的位置 2 並且都不佔著原來的位置 3 另外,如h1包文字的標籤,預設只設height的情況下,它的width是鋪滿父元素的寬度的,而當浮動或絕對定位後,它的寬度就是h1內文字的寬度 不同點 float後...