日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問(wèn) 生活随笔!

生活随笔

當(dāng)前位置: 首頁(yè) > 前端技术 > HTML >内容正文

HTML

HTML之position:absolute relative static fixed的区别和理解

發(fā)布時(shí)間:2024/4/15 HTML 41 豆豆
生活随笔 收集整理的這篇文章主要介紹了 HTML之position:absolute relative static fixed的区别和理解 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

HTML之position:absolute relative static fixed的區(qū)別

在理解position:absolute relative static fixed的區(qū)別時(shí),我們先需要清楚什么是文檔流。

一、文檔流:將窗體自上而下分成一行一行,并在每行中按從左至右的挨次排放元素,即為文檔流。

每個(gè)非浮動(dòng)塊級(jí)元素都獨(dú)有一行, 浮動(dòng)元素則按規(guī)則浮在行的一端. 若當(dāng)時(shí)行容不下, 則另起新行再浮動(dòng)。內(nèi)聯(lián)元素也不會(huì)獨(dú)有一行. 一切元素(包括塊級(jí),內(nèi)聯(lián)和列表元素)均可生成子行, 用于擺放子元素。有三種狀況將使得元素離開文檔流而存在,分別是浮動(dòng)、絕對(duì)定位、固定定位.
然則在IE中浮動(dòng)元素也存在于文檔流中,浮動(dòng)元素不占任何正常文檔流空間,而浮動(dòng)元素的定位照樣基于正常的文檔流,然后從文檔流中抽出并盡能夠遠(yuǎn)的挪動(dòng)至左側(cè)或許右側(cè)。當(dāng)一個(gè)元素脫離正常文檔流后,依然在文檔流中的其他元素將忽略該元素并填補(bǔ)其原先的空間。?
  基于文檔流,理解以下的定位形式:

相對(duì)定位:元素框偏移某個(gè)距離。元素仍保持其未定位前的形狀,它原本所占的空間仍保留。

絕對(duì)定位:即完全離開文檔流, 相關(guān)于position屬性非static值的比來(lái)父級(jí)元素進(jìn)行偏移。

固定定位:即完全離開文檔流,相關(guān)于視區(qū)進(jìn)行偏移。

文檔流是文檔中可顯示對(duì)象在排列時(shí)所占用的位置。比如網(wǎng)頁(yè)的div標(biāo)簽它默認(rèn)占用的寬度位置是一整行,p標(biāo)簽?zāi)J(rèn)占用寬度也是一整行,因?yàn)閐iv標(biāo)簽和p標(biāo)簽是塊狀對(duì)象。
網(wǎng)頁(yè)中大部分對(duì)象默認(rèn)是占用文檔流,也有一些對(duì)象是不占文檔流的,比如表單中隱藏域。當(dāng)然我們也可以讓占用文檔流的元素轉(zhuǎn)換成不占文檔流,這就要用到CSS中屬性position來(lái)控制。

二、CSS 2.0對(duì)position的定義:檢索對(duì)象的定位方式。共有4種取值。
absolute:絕對(duì)定位。將對(duì)象從文檔流中拖出,使用left,right,top,bottom等屬性相對(duì)于其最接近的一個(gè)最有定位設(shè)置的父對(duì)象進(jìn)行絕對(duì)定位。如果不存在這樣的父對(duì)象,則依據(jù)body對(duì)象。而其層疊通過(guò)z-index屬性定義
。當(dāng)對(duì)象定位在瀏覽器窗口以外,瀏覽器因此顯示滾動(dòng)條。
fixed:固定定位。對(duì)象定位遵從絕對(duì)(absolute)方式。但是要遵守一些規(guī)范。當(dāng)對(duì)象定位在瀏覽器窗口以外,瀏覽器不會(huì)因此顯示滾動(dòng)條,而當(dāng)滾動(dòng)條滾動(dòng)時(shí),對(duì)象始終固定在原來(lái)位置。
relative:相對(duì)定位。對(duì)象不可層疊,但將依據(jù)left,right,top,bottom等屬性在正常文檔流中偏移位置。當(dāng)對(duì)象定位在瀏覽器窗口以外,瀏覽器因此顯示滾動(dòng)條。?
static:元素框正常生成。塊級(jí)元素生成一個(gè)矩形框,作為文檔流的一部分,行內(nèi)元素則會(huì)創(chuàng)建一個(gè)或多個(gè)行框,置于其父元素中。
inherit:繼承值,對(duì)象將繼承其父對(duì)象相應(yīng)的值。

所有的塊元素在html文檔中是按照它們出現(xiàn)在文檔中的先后順序排列的(當(dāng)然,嵌套不在此列),每一個(gè)塊都會(huì)另起一行。如下圖


他們對(duì)應(yīng)的html如下:?

<html><head><title>DIV+CSS</title><style> #div1 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px; } #div2 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px; } #div3 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px; } </style> </head><body><div id="div1">div1</div><div id="div2">div2</div><div id="div3">div3</div></body> </html> 三、CSS中的相對(duì)定位和絕對(duì)定位模型

???在文檔流中,每個(gè)塊元素都會(huì)被安排到流中的一個(gè)位置,我們可以通過(guò)CSS中的定位屬性來(lái)重新安排它的位置。定位分為相對(duì)定位和絕對(duì)定位, 相對(duì)定位是相對(duì)于該塊元素在文檔流中的位置的,比如,我們可以使用相對(duì)定位把div2放到div1的右側(cè),CSS代碼如下:?

#div1 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px; }#div2 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px;position: relative;top: -64px;left: 204px; }#div3 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px; }下面是效果:

?? 可以看到一個(gè)有趣的現(xiàn)象,那就是雖然我們把div2移走了,但是div1和div3中間還是有一個(gè)空間, 說(shuō)明相對(duì)定位的元素是會(huì)占據(jù)文檔流空間的,這里的div2就是典型的“站著茅坑不拉屎”。

使用絕對(duì)定位也是可以把div2擺到div1的右邊的,而且絕對(duì)定位是不會(huì)占據(jù)文檔流空間的,如下圖,div1和div3之間沒有空白:

div2的CSS代碼:?

#div2 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px;position: absolute;top: 15px;left: 214px; }

絕對(duì)定位是個(gè)好東西,可以把內(nèi)容顯示到頁(yè)面上的任何位置,但是對(duì)于我們程序員來(lái)說(shuō),卻不能使用太多的絕對(duì)定位,因?yàn)槭褂贸绦騽?dòng)態(tài)向div中添加內(nèi)容,div的大小是不可知的,無(wú)法將每一個(gè)div的位置都定死。

四、CSS中的浮動(dòng)和清除模型

?? 在CSS中,最讓人不好理解的應(yīng)該算是float和clear意義了。float可以達(dá)到這樣一個(gè)效果,就是本來(lái)應(yīng)該一行一個(gè)的塊元素,如果定義了float屬性,則只要行的空間足夠,它會(huì)跑別的float元素的屁股后面,而不再會(huì)單獨(dú)占用一行,如下圖:

這里把div2和div3都定義了為浮動(dòng),代碼如下:

#div2 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px;float:left; }#div3 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px;float:left; }???那什么情況下需要clear呢?這是因?yàn)閒loat的元素和絕對(duì)定位的元素一樣,也是不占用文檔空間的,因此,如果我們把div2和div3都嵌套在div1中,并且把div2和div3都定義為浮動(dòng),那么由于它們不占用文檔空間,設(shè)置為浮動(dòng)后div2和div3都不屬于div1的內(nèi)容了,所以作為父元素的div1沒有內(nèi)容填充,不知道自動(dòng)擴(kuò)展大小,以至于顯示出來(lái)div2和div3會(huì)跑到div1的外面,如下圖


下面是它們的html代碼:?
<div id="div1">div1 <div id="div2">div2</div> <div id="div3">div3</div> </div>下面是它們的css代碼:?
#div1 {border: 1px solid #000099;height: 60px;width: 450px;margin:2px; }#div2 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px;float:left; }#div3 {border: 1px solid #000099;height: 60px;width: 200px;margin:2px;float:left; }因?yàn)閒loat的元素不占用文檔流空間,有時(shí)候元素還會(huì)重疊到float元素上,這里我就不舉例了。

為了解決上面的問(wèn)題,就需要在float之后的元素上面使用clear,在此例中,我們?cè)赿iv3后面加入一個(gè)空段落,并設(shè)置其為clear,如下:?

<div id="div1">div1 <div id="div2">div2</div> <div id="div3">div3</div> <p class="clear"></p> </div>clear 屬性定義了元素的哪邊上不允許出現(xiàn)浮動(dòng)元素。下面是新增加的空段落的CSS代碼:

.clear{clear:left; }這時(shí)div1有了p這塊內(nèi)容(盡管p里面是空的),并且clear:為left, 使得p的上外邊框邊界剛好在其上浮動(dòng)元素的下外邊距邊界之下

效果圖;


總結(jié)

以上是生活随笔為你收集整理的HTML之position:absolute relative static fixed的区别和理解的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。

主站蜘蛛池模板: 成人爱爱网站 | 久久高清免费 | 久操热线 | 91浏览器在线观看 | 成人片在线播放 | 亚洲春色另类 | 秋霞在线一区二区 | 久久蜜桃精品 | 欧美激情另类 | 中文字幕在线播放视频 | 无码人妻精品一区二区三应用大全 | 精品人妻伦九区久久aaa片 | 亚洲免费av一区二区 | 男人的天堂在线播放 | 日韩午夜激情 | 一级黄色淫片 | 国产成人精品一区在线播放 | 国产综合99 | 毛片视频免费 | 黄色片xxxx| 做暧暧视频在线观看 | 高清无码视频直接看 | 伊人三区 | 欧美在线一二 | 天堂在线www | 在线免费观看www | 中文毛片无遮挡高潮免费 | 欧美一级在线免费观看 | 亚洲xxxxxx| 免费一级欧美 | 久久久精彩视频 | 欧美男人又粗又长又大 | 日韩欧美日韩 | av大帝在线观看 | 先锋影音av在线资源 | 在线观看日本中文字幕 | 91丨porny丨中文 | 黄色录像a级片 | 91亚洲国产成人久久精品麻豆 | 亚洲20p| 嫩模被强到高潮呻吟不断 | 99艹 | 亚洲AV成人无码一二三区在线 | 日韩成人无码 | 被黑人猛躁10次高潮视频 | 色吧综合网 | 精品视频一区二区在线 | av不卡在线播放 | 日本黄网在线观看 | 韩国一区二区在线观看 | 婷婷久草| 丰满女邻居的色诱4hd | 亚洲自拍偷拍视频 | 天天综合天天色 | 国产强被迫伦姧在线观看无码 | japanese强行粗暴 | 国产精品一区二区入口九绯色 | 在线黄色av | 6996电视影片免费看 | 色图社区| 欧美激情一区二区三级高清视频 | 好吊色这里只有精品 | 欧美人体视频一区二区三区 | 精品无码黑人又粗又大又长 | www.久久久精品 | 九九爱爱视频 | 狠狠人妻久久久久久综合蜜桃 | 成人免费视频网址 | 久久精品视频在线观看 | 亚洲不卡一区二区三区 | 日韩人妻一区二区三区蜜桃视频 | 日韩久久高清 | 久久大伊人 | 色不卡| 婷婷综合网站 | a级黄视频| 九九热在线视频 | 蜜桃视频成人在线观看 | 极品少妇在线 | 精品在线免费视频 | 秋霞网一区二区 | 精品少妇av| 人人九九精品 | 丰满岳乱妇一区二区 | 国产美女引诱水电工 | 伊人福利视频 | 国产无遮挡a片又黄又爽 | 日韩一区二区三区av | 少妇av在线 | 日本免费在线一区 | 日本一级吃奶淫片免费 | 久久澡| 在线免费观看日本 | 三上悠亚一区二区在线观看 | 中文字幕第31页 | 亚洲污网站 | 四虎网址大全 | 香蕉视频97| 欧美午夜剧场 |