父子元素position中的absolute和relative問題
問題一:我試著敲了下代碼,有這兩個情況,結果都是一樣的:
情況一:父子元素的position都是relative;
情況二:父元素的position是relative,子元素的position是absolute
如果兩個情況結果都是一樣的話,好像情況二是更通用的,但是為什么呢?
問題二:我還有一個代碼搞不懂,是兩個相鄰的div元素,不是父子關系,position都是用的relative,但是結果顯示的我始終沒有搞明白:
<!DOCTYPE html>
<html>
<head>
?? ?<meta charset="UTF-8">
?? ?<title>relative</title>
?? ?<style>
?? ???? *{
?? ??? ??? ?margin: 0;
?? ???? }
?? ???? body{
?? ??? ??? ?height: 3000px;
?? ???? }
?? ??? ?.div1{
?? ??? ??? ?width: 50px;
?? ??? ??? ?height: 50px;
?? ??? ??? ?background: red;
?? ??? ??? ?position: relative;
?? ??? ??? ?left: 50px;
?? ??? ??? ?top: 10px;
?? ??? ?}
?? ??? ?.div2{
?? ??? ??? ?width: 50px;
?? ??? ??? ?height: 50px;
?? ??? ??? ?background: blue;
?? ??? ??? ?position: relative;?? ??? ??? ??? ??? ?
?? ??? ??? ?left: 10px;
??????????? top: 10px;
?? ??? ?}
?? ?</style>
</head>
<body>
?? ?<div class="div1">
?? ?</div>
?? ?<div class="div2">
??? </div>
</body>
</html>
結果如下:
可能圖片顯示的不是很清楚,勞煩大神復制一下,然后在瀏覽器上顯示一下,我始終沒有搞明白結果為什么是這樣。
請大神們賜教。
2019-05-16
?relative是相對位子,你在第一個div用relative,相對與原來的位子移動了,但是原來的靜態位子是不會消失的,還是在哪,所以你下一個div是接的你上一個div原來的靜態位子下來移動的
2019-05-08
問題2:relative是相對于原來的位置進行的偏移,而且不脫離文檔流,還是占據之前的空間位置,這樣顯示是對的