CSS布局之布局模型
發(fā)表時(shí)間:2023-12-23 來(lái)源:明輝站整理相關(guān)軟件相關(guān)文章人氣:
[摘要]這次給大家?guī)?lái)CSS布局之布局模型,CSS布局模型的注意事項(xiàng)有哪些,下面就是實(shí)戰(zhàn)案例,一起來(lái)看一下。在網(wǎng)頁(yè)中,元素有三種布局模型:1、流動(dòng)模型(Flow) 默認(rèn)的2、浮動(dòng)模型 (Float)3、層模型(Layer)1、流動(dòng)模型(Flow) 流動(dòng)(Flow)模型是默認(rèn)的網(wǎng)頁(yè)布局模式。也就是說(shuō)網(wǎng)頁(yè)在默...
這次給大家?guī)?lái)CSS布局之布局模型,CSS布局模型的
注意事項(xiàng)有哪些,下面就是實(shí)戰(zhàn)案例,一起來(lái)看一下。
在網(wǎng)頁(yè)中,元素有三種布局模型:
1、流動(dòng)模型(Flow) 默認(rèn)的
2、浮動(dòng)模型 (Float)
3、層模型(Layer)
1、流動(dòng)模型(Flow)
流動(dòng)(Flow)模型是默認(rèn)的網(wǎng)頁(yè)布局模式。也就是說(shuō)網(wǎng)頁(yè)在默認(rèn)狀態(tài)下的 HTML 網(wǎng)頁(yè)元素都是根據(jù)流動(dòng)模型來(lái)分布網(wǎng)頁(yè)內(nèi)容的。
流動(dòng)布局模型具有2個(gè)比較典型的特征:
第一點(diǎn),塊狀元素都會(huì)在所處的包含元素內(nèi)自上而下按順序垂直延伸分布,因?yàn)樵谀J(rèn)狀態(tài)下,塊狀元素的寬度都為100%。實(shí)際上,塊狀元素都會(huì)以行的形式占據(jù)位置。
(每一個(gè)便簽都顯示著自己本來(lái)默認(rèn)的那個(gè)寬高)
第二點(diǎn),在流動(dòng)模型下,行內(nèi)元素都會(huì)在所處的包含元素內(nèi)從左到右水平分布顯示。(內(nèi)聯(lián)元素可不像塊狀元素這么霸道獨(dú)占一行)
2、浮動(dòng)模型 (Float)
任何元素在默認(rèn)情況下是不能浮動(dòng)的,但可以用 CSS 定義為浮動(dòng)
div{float:left;} div{float:right;}
可以為不同的div設(shè)置不同的浮動(dòng)方式來(lái)布局。
3、層模型(Layer)
層模型有三種形式:
1、相對(duì)定位(position: relative)
2、絕對(duì)定位(position: absolute)
3、固定定位(position: fixed)
相對(duì)定位
如果想為元素設(shè)置層模型中的相對(duì)定位,需要設(shè)置position:relative(表示相對(duì)定位),它通過(guò)left、right、top、bottom屬性確定元素在正常文檔流中的偏移位置。
相對(duì)于以前的位置移動(dòng),偏移前的位置保留不動(dòng)。在使用相對(duì)定位時(shí),就算元素被偏移了,但是他仍然占據(jù)著它沒(méi)偏移前的空間。
絕對(duì)定位
如果想為元素設(shè)置層模型中的絕對(duì)定位,需要設(shè)置position:absolute(表示絕對(duì)定位),將元素從文檔流中拖出來(lái),然后使用left、right、top、bottom屬性相對(duì)于其最接近的一個(gè)具有定位屬性的父包含塊進(jìn)行絕對(duì)定位。如果不存在這樣的包含塊(就是它前面的div并沒(méi)有設(shè)置定位的屬性),則相對(duì)于body元素,即相對(duì)于瀏覽器窗口。
被設(shè)置了絕對(duì)定位的元素,在文檔流中是不占據(jù)空間的,如果某元素設(shè)置了絕對(duì)定位,那么它在文檔流中的位置會(huì)被刪除;
我們可以通過(guò)z-index來(lái)設(shè)置它們的堆疊順序 。
絕對(duì)定位使元素脫離文檔流,因此不占據(jù)空間 ,普通文檔流中元素的布局就當(dāng)絕對(duì)定位的元素不存在時(shí)一樣,仍然在文檔流中的其他元素將忽略該元素并填補(bǔ)他原先的空間。因?yàn)榻^對(duì)定位的框與文檔流無(wú)關(guān),所以它們可以覆蓋頁(yè)面上的其他元素!
浮動(dòng)元素的定位還是基于正常的文檔流,然后從文檔流中抽出并盡可能遠(yuǎn)的移動(dòng)至左側(cè)或者右側(cè),文字內(nèi)容會(huì)圍繞在浮動(dòng)元素周圍。它只是改變了文檔流的顯示,而沒(méi)有脫離文檔流,理解了這一點(diǎn),就很容易弄明白什么時(shí)候用定位,什么時(shí)候用浮動(dòng)了。
固定定位
fixed:表示固定定位,與absolute定位類型類似,但它的相對(duì)移動(dòng)的坐標(biāo)是視圖(屏幕內(nèi)的網(wǎng)頁(yè)窗口)本身。由于視圖本身是固定的,它不會(huì)隨瀏覽器窗口的滾動(dòng)條滾動(dòng)而變化,除非你在屏幕中移動(dòng)瀏覽器窗口的屏幕位置,或改變?yōu)g覽器窗口的顯示大小,因此固定定位的元素會(huì)始終位于瀏覽器窗口內(nèi)視圖的某個(gè)位置,不會(huì)受文檔流動(dòng)影響。
#div1{
position:fixed;
bottom:0;
right:0
} (始終在屏幕由下端有一個(gè)div框,會(huì)一直跟著滾動(dòng)條走)
相對(duì)定位可以和絕對(duì)定位混著使用 原則是:只要父div定義了定位屬性,子div就會(huì)跟著父div的位置去再定位
相信看了這些案例你已經(jīng)掌握了方法,更多精彩請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
相關(guān)閱讀:
如何解決layer.photos()異步修改圖片地址后顯示異常的問(wèn)題
怎樣監(jiān)聽(tīng)angularJs列表數(shù)據(jù)是否渲染完畢
ES6的“類”與面向?qū)ο蟮年P(guān)系
以上就是CSS布局之布局模型的詳細(xì)內(nèi)容,更多請(qǐng)關(guān)注php中文網(wǎng)其它相關(guān)文章!
網(wǎng)站建設(shè)是一個(gè)廣義的術(shù)語(yǔ),涵蓋了許多不同的技能和學(xué)科中所使用的生產(chǎn)和維護(hù)的網(wǎng)站。