亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

css的定位和布局把我搞糊涂了?

flow float layer和標準文檔流 浮動和絕對定位又是怎么回事

正在回答

2 回答

在HTML中,有三種機制:文檔流(默認) 浮動 定位。

文檔流:默認機制,按照從上到下,從左到右的順序排列,這是最基礎的。

浮動:float:left|right;clear:both? ,脫離文檔流,可以想象成子DIV 漂浮起來了,比如,一個父div,有兩個子div,如果是在文檔流中,兩個子div是將父div分成上下兩部分的,就像是“日”字;但是如果子div1 設置了float屬性,那么子div2 就會往上移動,就會變成三個“口”字重疊在一起,最下面的那個口是父div,上一層是子div2,最上面是子div1 。

定位:position:absolute| relative|fixed? .

其中,absolute是絕對定位,脫離了文檔流。根據設置了定位屬性的父元素的左上角為基點,通過top right? bottom left來定位。如果父元素沒有設置定位屬性,那么以body的左上角為基點。比如三個div,id=one是父元素,兩個子元素的id分別是two three? 。設置one的position屬性(absolute relative都可),設置two的position:absolute;left:10px; top:10px; three不設置position屬性。那么情形和上面的float的三個“口”字重疊一樣,底層是one,次一層是three,最上面是two,但是最上面的會向右和向下移動10px。

relative是相對定位,沒有脫離文檔流,不可疊加。還是上面的例子,三個div ,one two three。如果之設置two的position:relative;left:10px;top:10px;? 那么結果就會是這樣的:想象一個“日”字,上面的是two,下面的是three。雖然two向右 向下移動了10px,但是three依然不會占上去,依然在文檔流中的原來位置。

2 回復 有任何疑惑可以回復我~
#1

Limargin

另外,fixed 是窗口絕對定位,就是那種煩人的廣告,不管怎么拉都固定在某個位置的
2017-02-25 回復 有任何疑惑可以回復我~
#2

慕粉1474530878 提問者

非常感謝!
2017-03-01 回復 有任何疑惑可以回復我~

浮動定位是相對于容器(父元素)來講的,當左浮動時,子元素在父元素左側顯示;當右浮動時,子元素在父元素右側顯示,父元素位置發生變化,子元素跟著一起變化。絕對定位是相對于瀏覽器窗口來說的,當元素進行絕對定位后,不會隨著父元素變化而變化。

0 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
網頁布局基礎
  • 參與學習       214664    人
  • 解答問題       1833    個

讓你精通CSS中三大定位機制,徹底掌握網頁布局的相關知識

進入課程

css的定位和布局把我搞糊涂了?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號