亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定

請問為什么我的父元素和祖先元素都設置了相對定位,但子元素定位仍然依照祖先元素?

<!DOCTYPE?html?PUBLIC?"-//W3C//DTD?XHTML?1.0?Transitional//EN"?"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html?xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta?http-equiv="Content-Type"?content="text/html;?charset=utf-8"?/>
<title>混合布局編程挑戰</title>
<style?type="text/css">
body{?
margin:0;
padding:0;
font-size:30px;
color:#fff;
position:?relative;
}
.top{
position:?absolute;
top:?0px;
left:?0px;
background:?blue;
}
.main{
background:?red;
position:?relative;
}
.left{
background:?#abcdef;
width:?200px;
float:?left;
position:?absolute;
top:?0;
left:?0;
}
.right{
background:?green;
margin:0?0?200px?0;
}
.foot{
background:?#000;
clear:?both;
}
</style>


</head>
<body>
<div?class="top">top</div>
<div?class="main">
????<div?class="right">right</div>
????<div?class="left">left</div>
</div>
<div?class="foot">foot</div>
</body>
</html>


正在回答

1 回答

body不用設置relative,此時.top中的absolute仍然以body絕對定位,這個時候你是看不到top,因為絕對定位挺復雜這里不多說,后面main又設置了relative,這時,.left對父元素main絕對定位,建議以后浮動和定位不要一起用。


這個代碼,你試試

<!DOCTYPE html>

<html>

<head>

<meta charset="UTF-8">

<title></title>

<style type="text/css">

*{margin:0;padding:0;}

body{

font-size:30px;

color:#fff;

}

.top{

background: blue;

}

.main{

height: 300px;

background: red;

position: relative;

}

.left{

background: #abcdef;

width: 200px;

position: absolute;

top: 0;

left: 0;

}

.right{

background: green;

float:right;

}

.foot{

background: #000;

}

</style>

</head>

<body>

<div class="top">top</div>

<div class="main">

? ?<div class="right">right</div>

? ?<div class="left">left</div>

</div>

<div class="foot">foot</div>

</body>

</html>


0 回復 有任何疑惑可以回復我~
#1

Amaranta 提問者

非常感謝!
2017-02-25 回復 有任何疑惑可以回復我~

舉報

0/150
提交
取消
如何用CSS進行網頁布局
  • 參與學習       209566    人
  • 解答問題       1206    個

用最簡潔的案例教你布局的那些知識,這是前端工程師基本技能

進入課程

請問為什么我的父元素和祖先元素都設置了相對定位,但子元素定位仍然依照祖先元素?

我要回答 關注問題
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號