絕對定位absolute

absolute包裹性
float是個帶有方位的display:inline-block屬性唯袄,absolute也是個inline-block化屬性。

在一個空div中添加一張圖片,可以看到圖片位居div左側(cè)嫂沉,而此時div的長度為100%

Paste_Image.png

現(xiàn)在我們給div添加position:absolute; padding:5px; 發(fā)現(xiàn)div的寬度變窄了并且包裹在圖片四周,這時div的高和寬是自適應,會隨著圖片的大小變化而變化庙曙,absolute具有包裹性,同樣的float 也具有包裹性
當把position:absolute浩淘;修改為float:left捌朴;發(fā)現(xiàn)效果和absolute是一樣的
absolute與float的包裹性等同于inline-block屬性吴攒,不同的是float具有方向性,而inline-block是水平排列

Paste_Image.png
        <style type="text/css">
              .abs{
                    background: #ADADAD;
                  padding: 5px;
                    position: absolute;
              }
        </style>

absolute致使父元素的高度塌陷
絕對定位的元素脫離了文檔流(不占據(jù)之前的空間)砂蔽,而浮動元素依舊在文檔流中浮動(依然占據(jù)之前空間)

當我們給空div添加一張圖片洼怔,只給div設置padding:20px;然后給圖片設置position:absolute左驾;會發(fā)現(xiàn)div的高度只有padding這20px镣隶,并沒有根據(jù)圖片的高度自適應,absolute使圖片脫離文檔流什荣,使它在div中不占據(jù)空間汁蝶,所以父元素div的高度發(fā)生了塌陷,同樣的我試了下將圖片的position:absolute煤率;屬性設置為float:left秘车;發(fā)現(xiàn)具有同樣的特性致使父元素div的高度塌陷。

Paste_Image.png

對于float導致的父元素div塌陷桅锄,我們根據(jù)圖片大小給父元素div設置了一個高度大小 從而再次使得div包裹圖片

Paste_Image.png

但是存在缺點琉雳,就是這個高度是固定的,如果我們想添加多個圖片友瘤,多的使得圖片產(chǎn)生自動換行顯示翠肘,那么這個高度又需要修改,這里有一個方法就是讓div高度自適應它們的高度辫秧,刪除原先的父元素div固定height束倍,給父類元素div設置屬性overflow:hidden;

Paste_Image.png

可以看到div自動適應高度

Paste_Image.png
        <style type="text/css">
              .abs{
                    background: #ADADAD;
                  padding: 20px;
                    overflow: hidden;
              }
              div img{
                    float: left;
              }
        </style>

absolute跟隨性
給元素設置position:absolute盟戏;是元素具有跟隨性绪妹,例如在同一個div中,存放三張圖片柿究,都不設置任何屬性的時候邮旷,他們水平排列著。

Paste_Image.png

給第二張圖片設置一個絕對定位(position:absolute蝇摸;)屬性可以發(fā)現(xiàn)婶肩,第三張圖片緊靠在第一張圖片后面,而第二張圖片漂浮到了第三張圖片上面(第二張圖片脫離了文檔流貌夕,并且不占空間)律歼,并且還是緊靠在第一張圖片后面,這就是絕對定位的跟隨性

Paste_Image.png
       <style type="text/css">

            .qq{
                 width: 200px;
                 background: #adadad;
            }
            .close{
                 width: 50px;
                 position: absolute;
            }
            .wx{
                 width: 200px;
                 background: #ADADAD;
            }
       </style>

absolute的無依賴性
absolute的無依賴性蜂嗽,就是不依賴relative的限制來進行定位 首先先演示下父類元素設置relative下的定位苗膝,首先要給父類元素設置relative,子元素使用absolute 配合left,top進行定位辱揭,這里的left和top根據(jù)父類元素進行定位

Paste_Image.png
            .box{
                 position: relative;
            }
            .qq{
                 width: 300px;
                 background: #adadad;
            }
            .close{
                 width: 50px;
                 position: absolute;
                 left: 250px;
                 top: 0;
            }

這種方法給右上角圖標進行定位的缺點是要有relative來限制absolute离唐,如果不給absolute的父元素添加relative,那么absolute的元素就會根據(jù)body進行定位问窃,當圖片改變大小的時候亥鬓,右上角圖片就需要重新定位。比如當把圖片變小域庇,右上角的圖片就顯示在了偏右的位置嵌戈,小圖片依舊保持在left:250px;的位置听皿,這就需要重新給小圖片進行定位熟呛。

Paste_Image.png

如果使用margin配合absolute進行小圖片的定位,就可以脫離父級元素relative的限制尉姨,實現(xiàn)無依賴定位庵朝,同樣是上面的例子,現(xiàn)在取消父級元素relative的屬性又厉,使用margin進行定位

Paste_Image.png
        .qq{
                 width: 200px;
                 background: #adadad;

            }
            .close{
                 width: 50px;
                 position: absolute;
                 margin-left:-50px ;
                 margin-top: 0;

            }

使用margin和absolute配合進行定位九府,無論圖片怎么改變大小,小圖標始終定位在企鵝的右上角覆致,不會偏離位置侄旬。

Paste_Image.png

absolute的容器拉伸特性
absolute具有拉伸容器大小的特性,例如要實現(xiàn)一個距右邊距200px的容器煌妈,可以設置容器屬性position:absolute儡羔;left:0;top:0璧诵;right:200px笔链;
這里容器沒有設置高度,就使用一張圖片撐開它

Paste_Image.png

absolute不但可以拉伸容器腮猖,也可以拉伸內(nèi)部元素,如果內(nèi)部元素設置固定的長高赞枕,絕對定位是不能拉伸它的澈缺,當內(nèi)部元素設置為百分比時,內(nèi)部元素會隨著外部容器的拉伸而拉伸炕婶。

            .box{
                 position: absolute;
                 left: 0;
                 top: 0;
                 right: 200px;
                 background: aquamarine;
            }
            .pic{
                 width: 30%; /* 圖片設置百分比*/
            }
Paste_Image.png
最后編輯于
?著作權歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末姐赡,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子柠掂,更是在濱河造成了極大的恐慌项滑,老刑警劉巖,帶你破解...
    沈念sama閱讀 216,544評論 6 501
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件涯贞,死亡現(xiàn)場離奇詭異枪狂,居然都是意外死亡危喉,警方通過查閱死者的電腦和手機,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,430評論 3 392
  • 文/潘曉璐 我一進店門州疾,熙熙樓的掌柜王于貴愁眉苦臉地迎上來辜限,“玉大人,你說我怎么就攤上這事严蓖”〉眨” “怎么了?”我有些...
    開封第一講書人閱讀 162,764評論 0 353
  • 文/不壞的土叔 我叫張陵颗胡,是天一觀的道長毫深。 經(jīng)常有香客問我,道長毒姨,這世上最難降的妖魔是什么哑蔫? 我笑而不...
    開封第一講書人閱讀 58,193評論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮手素,結果婚禮上鸳址,老公的妹妹穿的比我還像新娘。我一直安慰自己泉懦,他們只是感情好稿黍,可當我...
    茶點故事閱讀 67,216評論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著崩哩,像睡著了一般巡球。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上邓嘹,一...
    開封第一講書人閱讀 51,182評論 1 299
  • 那天酣栈,我揣著相機與錄音,去河邊找鬼汹押。 笑死矿筝,一個胖子當著我的面吹牛,可吹牛的內(nèi)容都是我干的棚贾。 我是一名探鬼主播窖维,決...
    沈念sama閱讀 40,063評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼妙痹!你這毒婦竟也來了铸史?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,917評論 0 274
  • 序言:老撾萬榮一對情侶失蹤怯伊,失蹤者是張志新(化名)和其女友劉穎琳轿,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,329評論 1 310
  • 正文 獨居荒郊野嶺守林人離奇死亡崭篡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,543評論 2 332
  • 正文 我和宋清朗相戀三年挪哄,在試婚紗的時候發(fā)現(xiàn)自己被綠了。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片媚送。...
    茶點故事閱讀 39,722評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡中燥,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出塘偎,到底是詐尸還是另有隱情疗涉,我是刑警寧澤,帶...
    沈念sama閱讀 35,425評論 5 343
  • 正文 年R本政府宣布吟秩,位于F島的核電站咱扣,受9級特大地震影響,放射性物質(zhì)發(fā)生泄漏涵防。R本人自食惡果不足惜闹伪,卻給世界環(huán)境...
    茶點故事閱讀 41,019評論 3 326
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望壮池。 院中可真熱鬧偏瓤,春花似錦、人聲如沸椰憋。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,671評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽橙依。三九已至证舟,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間窗骑,已是汗流浹背女责。 一陣腳步聲響...
    開封第一講書人閱讀 32,825評論 1 269
  • 我被黑心中介騙來泰國打工, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留创译,地道東北人抵知。 一個月前我還...
    沈念sama閱讀 47,729評論 2 368
  • 正文 我出身青樓,卻偏偏與公主長得像软族,于是被迫代替她去往敵國和親辛藻。 傳聞我的和親對象是個殘疾皇子,可洞房花燭夜當晚...
    茶點故事閱讀 44,614評論 2 353

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

  • 問答題47 /72 常見瀏覽器兼容性問題與解決方案互订? 參考答案 (1)瀏覽器兼容問題一:不同瀏覽器的標簽默認的外補...
    _Yfling閱讀 13,748評論 1 92
  • 之前介紹過CSS浮動float詳解,本篇介紹的絕對定位absolute和浮動float有部分相似性痘拆。如果能理解浮動...
    張歆琳閱讀 96,621評論 39 192
  • 學習建議 定位、浮動是 CSS 核心知識點吐葵,必須熟練掌握规揪。 1.文檔流的概念指什么?有哪種方式可以讓元素脫離文檔流...
    饑人谷_任磊閱讀 1,085評論 0 3
  • 在CSS中關于定位的內(nèi)容是:position:relative | absolute | static | fix...
    feelinghappy618閱讀 637評論 0 0
  • 一 外部式css樣式 (也可稱為外聯(lián)式)就是把css代碼寫一個單獨的外部文件中温峭,這個css樣式文件以“.css...
    KunMitnic閱讀 939評論 0 1