解決高度塌陷&清除浮動(dòng)&定位

在文檔流中旨剥,父元素的高度默認(rèn)是被子元素?fù)伍_(kāi)的,也就是子元素多高浅缸,父元素就多高

但是當(dāng)為子元素設(shè)置浮動(dòng)以后轨帜,子元素會(huì)完全脫離文檔流,此時(shí)將會(huì)導(dǎo)致子元素?zé)o法撐起父元素的高度衩椒,導(dǎo)致父元素的高度塌陷

由于父元素的高度塌陷了蚌父,則父元素下的所有元素都會(huì)向上移動(dòng),這樣將會(huì)導(dǎo)致頁(yè)面布局混亂

所以在開(kāi)發(fā)中一定要避免出現(xiàn)高度塌陷的問(wèn)題,

我們可以將父元素的高度寫死毛萌,以避免塌陷的問(wèn)題出現(xiàn)梢什,

但是一旦高度寫死,父元素的高度將不能自動(dòng)適應(yīng)子元素的高度朝聋,所以這種方案是不推薦使用的

BFC:

開(kāi)啟后具有的特點(diǎn):

1.父元素的垂直外邊距不會(huì)和子元素重疊

2.開(kāi)啟BFC的元素不會(huì)被浮動(dòng)元素覆蓋

3.開(kāi)啟BFC的元素可以包含浮動(dòng)的子元素

如何開(kāi)啟元素的BFC

1.設(shè)置元素浮動(dòng)

2.設(shè)置元素定位

3設(shè)置元素為inlne_block

4.將元素的overflow設(shè)置為一個(gè)非visible的值

推薦方式:將overflow設(shè)置為hidden是副作用最小的開(kāi)啟BFC的方式

但是在IE6及以下的瀏覽器中并不支持BFC,所以使用這種方式不能兼容IE6

在IE6中雖然沒(méi)有BFC囤躁,但是具有另一個(gè)隱含的屬性叫做hasLayout冀痕,該屬性的作用和BFC類似荔睹,所在IE6瀏覽器可以通過(guò)開(kāi)hasLayout來(lái)解決該問(wèn)題

開(kāi)啟方式很多,我們直接使用一種副作用最小的:

直接將元素的zoom設(shè)置為1即可

zoom表示放大的意思言蛇,后邊跟著一個(gè)數(shù)值僻他,寫幾就將元素放大幾倍

zoom:1表示不放大元素,但是通過(guò)該樣式可以開(kāi)啟hasLayout

zoom這個(gè)樣式腊尚,只在IE中支持吨拗,其他瀏覽器都不支持

清除浮動(dòng):

.box1{

width: 100px;

height: 100px;

background-color: yellow;

/*設(shè)置box1向左浮動(dòng)*/

float: left;

}

.box2{

width: 200px;

height: 200px;

background-color: yellowgreen;

/*

由于受到box1浮動(dòng)的影響,box2整體向上移動(dòng)了100px

我們有時(shí)希望清除掉其他元素浮動(dòng)對(duì)當(dāng)前元素產(chǎn)生的影響婿斥,這時(shí)可以使用clear來(lái)完成功能

可選值:

none劝篷,默認(rèn)值,不清除浮動(dòng)

left民宿,清除左側(cè)浮動(dòng)元素對(duì)當(dāng)前元素的影響

right娇妓,清除右側(cè)浮動(dòng)元素對(duì)當(dāng)前元素的影響

both,清除兩側(cè)浮動(dòng)元素對(duì)當(dāng)前元素的影響

清除對(duì)他影響最大的那個(gè)元素的浮動(dòng)

*/

/*

清除box1浮動(dòng)對(duì)box2產(chǎn)生的影響

清除浮動(dòng)以后活鹰,元素會(huì)回到其他元素浮動(dòng)之前的位置

*/

/*clear: left;*/

float: right;

}

.box3{

width: 300px;

height: 300px;

background-color: skyblue;

clear: both;

}

</style>

</head>

<body>

<div class="box1"></div>

<div class="box2"></div>

<div class="box3"></div>



解決高度塌陷:
解決高度塌陷方案二:

可以直接在高度塌陷的父元素的最后哈恰,添加一個(gè)空白的div,由于這個(gè)div并沒(méi)有浮動(dòng)志群,所以他是可以撐開(kāi)父元素的高度的

然后再對(duì)其進(jìn)行清除浮動(dòng)着绷,這樣可以通過(guò)這個(gè)空白的div來(lái)?yè)伍_(kāi)父元素的高度,基本沒(méi)有副作用

使用這種方式雖然可以解決問(wèn)題锌云,但是會(huì)在頁(yè)面中添加多余的結(jié)構(gòu)

.clear{

clear: both;}

通過(guò)after偽類荠医,選中box1的后邊*/

/*

可以通過(guò)after偽類向元素的最后添加一個(gè)空白的塊元素,然后對(duì)其清除浮動(dòng)宾抓,

這樣做和添加一個(gè)div的原理一樣子漩,可以達(dá)到一個(gè)相同的效果,

而且不會(huì)在頁(yè)面中添加多余的div石洗,這是我們最推薦使用的方式幢泼,幾乎沒(méi)有副作用

*/

.clearfix:after{

/*添加一個(gè)內(nèi)容*/

content: "";

/*轉(zhuǎn)換為一個(gè)塊元素*/

display: block;

/*清除兩側(cè)的浮動(dòng)*/

clear: both;

/*在IE6中不支持after偽類,所以在IE6中還需要使用hasLayout來(lái)處理*/

.clearfix{

zoom: 1;

相對(duì)定位:

定位:

- 定位指的就是將指定的元素?cái)[放到頁(yè)面的任意位置

通過(guò)定位可以任意的擺放元素

- 通過(guò)position屬性來(lái)設(shè)置元素的定位

-可選值:

static:默認(rèn)值,元素沒(méi)有開(kāi)啟定位

relative:開(kāi)啟元素的相對(duì)定位

absolute:開(kāi)啟元素的絕對(duì)定位

fixed:開(kāi)啟元素的固定定位(也是絕對(duì)定位的一種)

當(dāng)元素的position屬性設(shè)置為relative時(shí)讲衫,則開(kāi)啟了元素的相對(duì)定位

1.當(dāng)開(kāi)啟了元素的相對(duì)定位以后缕棵,而不設(shè)置偏移量時(shí),元素不會(huì)發(fā)生任何變化

2.相對(duì)定位是相對(duì)于元素在文檔流中原來(lái)的位置進(jìn)行定位

3.相對(duì)定位的元素不會(huì)脫離文檔流

4.相對(duì)定位會(huì)使元素提升一個(gè)層級(jí)

5.相對(duì)定位不會(huì)改變?cè)氐男再|(zhì)涉兽,塊還是塊招驴,內(nèi)聯(lián)還是內(nèi)聯(lián)

當(dāng)開(kāi)啟了元素的定位(position屬性值是一個(gè)非static的值)時(shí),可以通過(guò)left right top bottom四個(gè)屬性來(lái)設(shè)置元素的偏移量

left:元素相對(duì)于其定位位置的左側(cè)偏移量

right:元素相對(duì)于其定位位置的右側(cè)偏移量

top:元素相對(duì)于其定位位置的上邊的偏移量

bottom:元素相對(duì)于其定位位置下邊的偏移量

通常偏移量只需要使用兩個(gè)就可以對(duì)一個(gè)元素進(jìn)行定位枷畏,

一般選擇水平方向的一個(gè)偏移量和垂直方向的偏移量來(lái)為一個(gè)元素進(jìn)行定位

絕對(duì)定位:
當(dāng)position屬性值設(shè)置為absolute時(shí)别厘,則開(kāi)啟了元素的絕對(duì)定位

絕對(duì)定位:

1.開(kāi)啟絕對(duì)定位,會(huì)使元素脫離文檔流

2.開(kāi)啟絕對(duì)定位以后拥诡,如果不設(shè)置偏移量触趴,則元素的位置不會(huì)發(fā)生變化

3.絕對(duì)定位是相對(duì)于離他最近的氮发、開(kāi)啟了定位的祖先元素進(jìn)行定位的(一般情況,開(kāi)啟了子元素的絕對(duì)定位冗懦,都會(huì)同時(shí)開(kāi)啟父元素的相對(duì)定位)

如果所有的祖先元素都沒(méi)有開(kāi)啟定位爽冕,則會(huì)相對(duì)于瀏覽器窗口進(jìn)行定位

4.絕對(duì)定位會(huì)使元素提升一個(gè)層級(jí)

5.絕對(duì)定位會(huì)改變?cè)氐男再|(zhì):

內(nèi)聯(lián)元素變成塊元素,

塊元素的寬度和高度默認(rèn)都被內(nèi)容撐開(kāi)

/*開(kāi)啟box4的相對(duì)定位*/

/*position: relative;*/

/*開(kāi)啟絕對(duì)定位*/

position: absolute;


?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末披蕉,一起剝皮案震驚了整個(gè)濱河市颈畸,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌没讲,老刑警劉巖眯娱,帶你破解...
    沈念sama閱讀 218,122評(píng)論 6 505
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異食零,居然都是意外死亡困乒,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,070評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門贰谣,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)娜搂,“玉大人,你說(shuō)我怎么就攤上這事吱抚“儆睿” “怎么了?”我有些...
    開(kāi)封第一講書人閱讀 164,491評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵秘豹,是天一觀的道長(zhǎng)携御。 經(jīng)常有香客問(wèn)我,道長(zhǎng)既绕,這世上最難降的妖魔是什么啄刹? 我笑而不...
    開(kāi)封第一講書人閱讀 58,636評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮凄贩,結(jié)果婚禮上誓军,老公的妹妹穿的比我還像新娘。我一直安慰自己疲扎,他們只是感情好昵时,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,676評(píng)論 6 392
  • 文/花漫 我一把揭開(kāi)白布。 她就那樣靜靜地躺著椒丧,像睡著了一般壹甥。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上壶熏,一...
    開(kāi)封第一講書人閱讀 51,541評(píng)論 1 305
  • 那天句柠,我揣著相機(jī)與錄音,去河邊找鬼。 笑死溯职,一個(gè)胖子當(dāng)著我的面吹牛管怠,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播缸榄,決...
    沈念sama閱讀 40,292評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼祝拯!你這毒婦竟也來(lái)了甚带?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書人閱讀 39,211評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤佳头,失蹤者是張志新(化名)和其女友劉穎鹰贵,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體康嘉,經(jīng)...
    沈念sama閱讀 45,655評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡碉输,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,846評(píng)論 3 336
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了亭珍。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片敷钾。...
    茶點(diǎn)故事閱讀 39,965評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖肄梨,靈堂內(nèi)的尸體忽然破棺而出阻荒,到底是詐尸還是另有隱情,我是刑警寧澤众羡,帶...
    沈念sama閱讀 35,684評(píng)論 5 347
  • 正文 年R本政府宣布侨赡,位于F島的核電站,受9級(jí)特大地震影響粱侣,放射性物質(zhì)發(fā)生泄漏羊壹。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,295評(píng)論 3 329
  • 文/蒙蒙 一齐婴、第九天 我趴在偏房一處隱蔽的房頂上張望油猫。 院中可真熱鬧,春花似錦尔店、人聲如沸眨攘。這莊子的主人今日做“春日...
    開(kāi)封第一講書人閱讀 31,894評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)鲫售。三九已至,卻和暖如春该肴,著一層夾襖步出監(jiān)牢的瞬間情竹,已是汗流浹背。 一陣腳步聲響...
    開(kāi)封第一講書人閱讀 33,012評(píng)論 1 269
  • 我被黑心中介騙來(lái)泰國(guó)打工匀哄, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留秦效,地道東北人雏蛮。 一個(gè)月前我還...
    沈念sama閱讀 48,126評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像阱州,于是被迫代替她去往敵國(guó)和親挑秉。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,914評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容

  • 問(wèn)答題47 /72 常見(jiàn)瀏覽器兼容性問(wèn)題與解決方案苔货? 參考答案 (1)瀏覽器兼容問(wèn)題一:不同瀏覽器的標(biāo)簽?zāi)J(rèn)的外補(bǔ)...
    _Yfling閱讀 13,753評(píng)論 1 92
  • 1 高度塌陷 在文檔流中犀概,父元素的高度默認(rèn)是被子元素?fù)伍_(kāi)的,也就是子元素多高夜惭,父元素就多高 但是當(dāng)為子元素設(shè)置浮動(dòng)...
    冷暖自知_2237閱讀 957評(píng)論 0 0
  • relative:生成相對(duì)定位的元素姻灶,通過(guò)top,bottom,left,right的位置相對(duì)于其正常位置進(jìn)行定位...
    zx9426閱讀 943評(píng)論 0 2
  • 一,浮動(dòng)元素有什么特征诈茧?對(duì)父容器产喉、其他浮動(dòng)元素、普通元素敢会、文字分別有什么影響? 浮動(dòng)模型是一種可視化格式模型曾沈,浮動(dòng)...
    DeeJay_Y閱讀 874評(píng)論 0 4
  • 9年前的今天,凌晨4:44分走触,我失去了我的父親晦譬。當(dāng)醫(yī)生宣布他死亡的時(shí)候,我的內(nèi)心是恐懼而壓抑的互广,...
    留一白閱讀 264評(píng)論 0 0