在web前端中,元素的定位是必須掌握的,然後也是比較容易搞混淆的:
positon包含以下值:
1.absolute 絕對定位:相對位置為最近一級的非static定位的父元素;
2.relative 相對定位:相對正常位置進行布局;
3.fixed 固定定位:相對於瀏覽器視窗進行定位;
4.static 沒有定位:元素出現在正常的流中,
absolute絕對定位:採用絕對定位,會脫離文件流,浮動起來,多個層重疊使用z-index屬性改變重疊的順序,該定位在時候時,其相對位置為相對定位容器的左上角的內邊框,忽略padding;不管是行內元素還是塊級元素,使用絕對定位後,其display屬性為block,且寬度auto。
absoluted與relative的結合使用:
祖先元素
父級元素
子元素
情況1:祖先元素採用相對定位,子元素絕對定positon:absolute;
分析:祖先元素相對定位,預設在body的content-box區域內進行定位、佔位
子元素絕對定位,找到對應的祖先元素,脫離文件流在祖先節點的padding-box區定位,不佔位,寬度auto;
情況2:父級元素採用相對定位,子元素絕對定positon:absolute;
分析:父級元素相對定位,預設在祖先元素的content-box區域內進行定位、佔位
子元素絕對定位,找到對應的父級元素,脫離文件流在父級節點的padding-box區定位,不佔位,寬度auto;
情況3:祖先元素、父級元素採用相對定位,子元素絕對定positon:absolute;
分析:祖先元素相對定位,預設在body的content-box區域內進行定位、佔位
父級元素相對定位,預設在祖先節點的content-box區域內進行定位、佔位
子元素絕對定位,找到對應的父級元素,脫離文件流在父級節點的padding-box區定位,不佔位,寬度auto;
情況4:父級元素採用絕對定位,子元素絕對定positon:absolute;
分析:父級元素絕對定位,預設在祖先元素的content-box區域內浮動,寬度為auto
子元素絕對定位,找到對應的父級元素,脫離文件流在父級節點的padding-box區定位,不佔位,寬度auto;
總結:元素的定位是乙個比較容易混淆的點,不管是行級元素還是塊級元素,應用了絕對定位後,display為block,可以設定寬度和高度,沒有設定的話,預設auto
元素的幾種定位詳解
將物件從文件流中脫離出來,使用left right top bottom等屬性相對其最近的乙個設定有定位的父元素進行絕對定位 如果不存在這樣的父元素,則根據html 最大的包含塊 瀏覽器 物件而起層疊通過z index屬性定義 包含塊是絕對定位的基礎,是為絕對定位提供參照的參照物 讓乙個元素變成包含...
selenium元素定位詳解
列印url 上一節講到,可以將瀏覽器的title列印出來,這裡再講個簡單的,把當前url列印出來。其實也沒啥大用,可以做個湊數的用例。coding utf 8 from selenium import webdriver import time browser webdriver.firefox u...
關於子元素的absolute定位
關於子元素 如div 在父元素 如div 中的定位問題 假設現有html 如下 class div1 class div2 test 想讓div2在div1中實現底部居中的效果,查詢資料發現關鍵步驟 css 是 div div2 在一篇文章看到以下內容,解釋得很清楚 position absolut...