關於元素的定位詳解

2021-08-21 08:09:25 字數 1570 閱讀 3045

在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...