雷速体育官方下载:

您的位置:雷速体育答题测试答案 > div+css > 詳解CSS相對定位和絕對定位

詳解CSS相對定位和絕對定位

時間:2018-10-25 11:24:38  來源:免費模板網 作者:風雪 閱讀次數 tags定位相對定位絕對定位

CSS 相對定位 - relative

設置為相對定位的元素框會偏移某個距離。元素仍然保持其未定位前的形狀,它原本所占的空間仍保留。

相對定位是一個非常容易掌握的概念。如果對一個元素進行相對定位,它將出現在它所在的位置上。然后,可以通過設置垂直或水平位置,讓這個元素“相對于”它的起點進行移動。

如果將 top 設置為 20px,那么框將在原位置頂部下面 20 像素的地方。如果 left 設置為 30 像素,那么會在元素左邊創建 30 像素的空間,也就是將元素向右移動。

詳解CSS相對定位和絕對定位

<style type="text/css">
    div{float:left;width:50px;height:50px;border:1px solid #ccc;background:#eee}
    #box_relative {
        position: relative;
        left: 30px;
        top: 20px;
    }
</style>
<div>框1</div>
<div id="box_relative">框2</div>
<div>框3</div>

注意,在使用相對定位時,無論是否進行移動,元素仍然占據原來的空間。因此,移動元素會導致它覆蓋其它框。

CSS 絕對定位 - absolute

設置為絕對定位的元素框從文檔流完全刪除,并相對于其包含塊定位,包含塊可能是文檔中的另一個元素或者是初始包含塊。元素原先在正常文檔流中所占的空間會關閉,就好像該元素原來不存在一樣。元素定位后生成一個塊級框,而不論原來它在正常流中生成何種類型的框。

絕對定位使元素的位置與文檔流無關,因此不占據空間。這一點與相對定位不同,相對定位實際上被看作普通流定位模型的一部分,因為元素的位置相對于它在普通流中的位置。

普通流中其它元素的布局就像絕對定位的元素不存在一樣:

詳解CSS相對定位和絕對定位

<style type="text/css">
    div{float:left;width:50px;height:50px;margin:5px;border:1px solid #ccc;background:#eee}
    #box_absolute {
        position: absolute;
        left: 30px;
        top: 20px;
    }
</style>
<div>框1</div>
<div id="box_absolute">框2</div>
<div>框3</div>

絕對定位的元素的位置相對于最近的已定位祖先元素,如果元素沒有已定位的祖先元素,那么它的位置相對于最初的包含塊。

對于定位的主要問題是要記住每種定位的意義。所以,現在讓我們復習一下學過的知識吧:相對定位是“相對于”元素在文檔中的初始位置,而絕對定位是“相對于”最近的已定位祖先元素,如果不存在已定位的祖先元素,那么“相對于”最初的包含塊。

注釋:根據用戶代理的不同,最初的包含塊可能是畫布或 HTML 元素。

提示:因為絕對定位的框與文檔流無關,所以它們可以覆蓋頁面上的其它元素??梢醞ü柚?z-index 屬性來控制這些框的堆放次序。

絕對定位的元素的位置相對于最近的已定位祖先元素,如果元素沒有已定位的祖先元素,那么它的位置相對于最初的包含塊。

通過例2可知,框2沒有最近的已定位祖先元素,所以它的位置相對于最初的包含塊,即body元素

再來看下面的例子:

<style type="text/css">
    div {float: left;width: 50px;height: 50px; margin: 5px;border: 1px solid #ccc; background: #eee;}
    #box_absolute {
        position: absolute;
        left: 30px;
        top: 20px;
    }
</style>
<div>框1</div>
<div style="position:relative">
    框3
    <div id="box_absolute">框2</div>
</div>

框2放入框3里面;給框3加上相對定位(position:relative),框2最新的已定位祖先元素就是框3;

簡單點,要使用絕對定位,就需要給上級的某個標簽加一個position

ps:CSS 定位屬性介紹

屬性 描述
position 把元素放置到一個靜態的、相對的、絕對的、或固定的位置中。
top 定義了一個定位元素的上外邊距邊界與其包含塊上邊界之間的偏移。
right 定義了定位元素右外邊距邊界與其包含塊右邊界之間的偏移。
bottom 定義了定位元素下外邊距邊界與其包含塊下邊界之間的偏移。
left 定義了定位元素左外邊距邊界與其包含塊左邊界之間的偏移。
overflow 設置當元素的內容溢出其區域時發生的事情。
clip 設置元素的形狀。元素被剪入這個形狀之中,然后顯示出來。
vertical-align 設置元素的垂直對齊方式。
z-index 設置元素的堆疊順序

本文地址://www.384142.live/bjrm/2018/1025/3063.html

猜你喜歡
欄目推薦
模板推薦

Copyright:雷速体育答题测试答案 www.384142.live 免費模板網 All Rights Reserved 雷速体育答题测试答案   遼公網安備 21010602000376號  遼公網安備:42900402000182號

免責聲明:本站部分資源來自互聯網收集,版權歸原創者所有,如果侵犯了你的權益,我們會及時刪除侵權內容,聯系QQ:1615187561 謝謝合作!

{ganrao}