CSS position屬性中absolute和relative的應(yīng)用
本文向大家描述一下CSS中position的absolute和relative的應(yīng)用,position屬性其實(shí)是指本體對上級(jí)的定位,absolute是指絕對定位,而relative是指相對定位,position的屬性值的效果,直接受其容器樣式中position屬性值影響。
CSS中position的absolute和relative的應(yīng)用
CSS中Position屬性
之前老弄不明白,只能憑借一點(diǎn)短期內(nèi)“虐出來的經(jīng)驗(yàn)”制作需要的效果,后來仔細(xì)研究了一下Hutia的XScroller,并且仔細(xì)看了文檔,才知道這個(gè)position屬性其實(shí)是指本體對上級(jí)的定位。如果這么理解,就好辦了。
默認(rèn)的屬性值都是static,靜態(tài)。就不用多說了。最關(guān)鍵的是relative(相對)以及absolute(絕對)。往往我們?nèi)绻荂OPY別人的代碼,會(huì)把a(bǔ)bsolute屬性與left、top配合起來制作相關(guān)的“懸浮層”效果。然而有時(shí)候我們需要針對某一個(gè)容器的懸浮效果,而不是針對窗口的。這時(shí)候通過高度、寬度的計(jì)算不但麻煩,而且?guī)缀鯚o法***實(shí)現(xiàn)效果。我一開始也無能為力,后來發(fā)現(xiàn)只要把其上一級(jí)的樣式屬性position設(shè)置為relative就可以了。
也就是說,position的屬性值的效果,直接受其容器樣式中position屬性值影響。例如如下A-B的嵌套結(jié)構(gòu):
viewplaincopytoclipboardprint?
- <dividdivid="A">
- <dividdivid="B">
- </div>
- </div>
- <dividdivid="A">
- <dividdivid="B">
- </div>
- </div>
當(dāng)A的position為relative時(shí),B的position為absolute才有效。這時(shí)候left:0、top:0就不再針對窗口文檔,而是針對id為A的這個(gè)div了。
這樣在開發(fā)一些基于B/S應(yīng)用程序的時(shí)候,就能很方便的添加一些UI元素,例如某一個(gè)活動(dòng)層的關(guān)閉按鈕等。
【編輯推薦】
- ***實(shí)現(xiàn)CSS頁面居中方法揭秘
- CSS Sprites樣式生成工具用法詳解
- FireFox和IE中CSS兼容技巧匯總
- CSS使用中常見問題及解決方法
- 深入剖析Firefox下 margin-top失效原因與解決方案