線上服務(wù)咨詢
div的浮動(dòng)、定位、和框架模型概念介紹
2018-10-22
可視化模型:浮動(dòng)、定位和框架模型是CSS的3個(gè)重要的概念,這些概念控制在頁(yè)面上安排和顯示元素的方式.形成CSS的基本布局。
視覺可視化模型:p、h1、div等元素常常被稱為塊級(jí)元素。這就意味著這些元素顯示為一塊內(nèi)容。即“塊框”。與之相反。strong和span等元素稱為行內(nèi)元素,因?yàn)樗鼈兊膬?nèi)容顯示在行中。即“行內(nèi)框”。
可以使用display屬性改變生成的框的類型.通過(guò)將display屬性設(shè)t為block,可以讓行內(nèi)元素表現(xiàn)像塊級(jí)元素一樣。還可以將display屬性設(shè)none.讓生成的元素根本沒(méi)有框。這樣這個(gè)框及其所有內(nèi)容就不顯示了,不占用文檔中的空間。
CSS中有3種基本的定位
機(jī)制,分別是普通流、浮動(dòng)和絕對(duì)定位。除非專門指定,否則所有框都在普通流中定位。
塊級(jí)框從上到下.一個(gè)接一個(gè)地排列,框之間的垂宜距離由框的垂直空白邊計(jì)算出來(lái)
行內(nèi)框在一行中的水平位置,可以使用水平填充、邊框和空白邊設(shè)置,它們之間的水平間距。但是垂直填充、邊框和空白邊不影響行內(nèi)框的高度。
由于一行形成的水平框稱為行框,行框的高度足以容納它包含的所有行內(nèi)框,設(shè)置行高可以增加這個(gè)框的高度。
框可以按照XHTM的嵌套方式包含其他的框。大多數(shù)框由顯示定義的元案形成。但是在一些情況下,即使沒(méi)有進(jìn)行顯示定義,也會(huì)創(chuàng)建塊級(jí)元素。這種情況發(fā)生在將一些文本添加到一些塊級(jí)元素(比如DIV)的開頭時(shí),即使沒(méi)有把這些文本定義為段落,它也會(huì)被認(rèn)為是段落:
在這種情況下,這個(gè)框?yàn)闊o(wú)名塊框,因?yàn)樗慌c專門定義的元素相關(guān)聯(lián)。塊級(jí)元素內(nèi)的文本行也會(huì)發(fā)生類似的情況。假設(shè)有一個(gè)包含3行文本的段落,每行文本形成一個(gè)無(wú)名行框.則無(wú)法直核對(duì)無(wú)名框或行框應(yīng)用樣式,因?yàn)闆](méi)有可以應(yīng)用樣式的地方。但是。這有助于理解在屏幕上看到的所有東西都形成某種框。
浮動(dòng)定位:還有一種定位模型為浮動(dòng)模型。浮動(dòng)的框可以左右移動(dòng),直到它外邊緣碰到包含框或另一個(gè)浮動(dòng)框的邊緣。因?yàn)楦?dòng)根不在文檔的普通流中,所以文檔流中的塊框表現(xiàn)得就像浮動(dòng)框不存在一樣。
float可選參數(shù)有以下幾個(gè)。
inherit:繼承父級(jí)元素的浮動(dòng)屬性。
Lift:元素會(huì)移至父元素中的左側(cè)。
none:默認(rèn)值。
right:元素會(huì)移至父元素中的右側(cè)。
position定位:position定位與float一樣.也是CSS排版中非常里要的概念。Position的字面意思是指定塊的位置,即塊相對(duì)子其父塊的位置和相對(duì)于它自身應(yīng)該在的位置。
position屬性值有以下幾種。
absolute:絕對(duì),將對(duì)象從文檔流中拖出.通過(guò)width、height、left right、toP、bottom等屬性與margin,padding、border進(jìn)行絕對(duì)定位,絕對(duì)定位的元素可以有邊界,但這些邊界不壓縮。而其層疊通過(guò)z-index屬性定義。
fixed:懸浮,使元素固定在屏幕的某個(gè)位置,其包含塊是可視區(qū)域本身.因此它不隨滾動(dòng)條的滾動(dòng)而滾動(dòng)。 inhert:繼承上級(jí)元素position值。
relative:相對(duì),對(duì)象不可層疊但將依據(jù)left, right、top, bottom等屬性在正常文檔流中偏移位置。
static:靜態(tài)(默認(rèn)),無(wú)特殊定位。