? ? ? ?定位吹由,同浮動一樣是前端開發(fā)人員進(jìn)行css布局的另一神器。浮動布局比較靈活才顿,但不容易控制莫湘,定位布局則相反,可以讓用戶精確地控制元素在頁面中的位置“指哪打哪”郑气,但缺乏浮動布局的靈活性幅垮。
? ? ? ?在css中,定位布局共有四種方式:
? ? ? ?(1)固定定位(fixed)尾组;
? ? ? ?(2)相對定位(relative)忙芒;
? ? ? ?(3)絕對定位(absolute);
? ? ? ?(4)靜態(tài)定位(static)演怎。
1匕争、固定定位
? ? ? ? ? 當(dāng)元素的position屬性設(shè)置為fixed時(shí),這個(gè)元素就被固定了爷耀,被固定的元素不會隨著滾動條的拖動而改變位置(在視野中)甘桑,相對屏幕的可視區(qū)進(jìn)行定位。示例歹叮,
? ? ? ?固定定位跑杭,使用top、bottom咆耿、left和right這4個(gè)屬性來設(shè)置元素相對瀏覽器窗口的位置德谅,造成元素完全脫離文檔流,改變元素類型萨螺,多用于“回頂部”特效和固定欄目的設(shè)置窄做。
2愧驱、相對定位
? ? ? ? 當(dāng)元素的position屬性設(shè)置為relative時(shí),此時(shí)元素便具有相對定位的特性椭盏。相對定位的元素组砚,其位置是相對于它的原始位置計(jì)算而來的,同樣具有top掏颊、bottom糟红、left和right這4個(gè)屬性。相對定位不使元素脫離文檔流乌叶,不改變元素的本身類型盆偿。示例,
3准浴、絕對定位
? ? ? ?絕對定位absolute,是定位屬性中出場頻率最高的一個(gè)事扭,一般配合relative使用,真正的實(shí)現(xiàn)了“指哪打哪”的效果乐横。一個(gè)元素變成了絕對定位元素句旱,這個(gè)元素就完全脫離正常文檔流了,絕對定位元素的前面或者后面的元素會認(rèn)為這個(gè)元素并不存在晰奖,即這個(gè)元素“浮”在其他元素上面。絕對定位會改變元素的本身類型(行內(nèi)元素會變成塊元素)腥泥,其位置如果有定位父級相對于定位父級發(fā)生偏移匾南,如果沒有定位父級相對于整個(gè)文檔發(fā)生偏移。
4蛔外、靜態(tài)定位
? ? ? ? 如果沒有指定元素的position屬性值蛆楞,元素也就是靜態(tài)定位。static是position屬性的默認(rèn)值夹厌,它表示塊保留在原本應(yīng)該在的位置豹爹,不會重新定位。這個(gè)屬性一般很少使用矛纹,不支持left臂聋、top等屬性值,使用場景一般在清除其他定位屬性上或南。