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

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

求大神給個這章有批注的答案代碼

同學代碼和評論那里太多了答案了 不知道那個是對的o(╯□╰)o ?而且還看不懂絕對定位和相對定位那里,為什么要填

正在回答

6 回答

<!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}


.top{;height:80px;background:#ccc;}


/*設置中間欄CSS樣式,給.main塊元素添加相對定位屬性,由于沒設置相對位置參數,其位置就不變動,.main塊元素就處在.top塊元素下方,即中間欄。添加相對定位屬性的目的是使其子元素.left用絕對定位后是相對.main塊來移動的*/

.main{height:600px; background:#f00; position:relative;}


/*.left塊絕對定位,相對.main移動,在left:0; top:0的地方,即左邊。定寬定高。由于.right先加載,且為塊元素,會占滿.main一行,如果不指定位置,則相當于不改變.left原先的位置,就會跑到.right所處行的下面去。*/

.left{width:200px;height:600px;background:#00f; position:absolute; left:0; top:0;}


/*給.right設置左邊距210px,為.left預留位置和縫隙,由于未設定寬度,寬度自適應*/

.right{height:600px;background:#0da; margin-left:210px}

.foot{height:50px;background:#f31;}

</style>


</head>


<body>

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

<div class="main">

<!--先加載right-->

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

? ? <!--后加載left-->

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

</div>

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


</body>

</html>


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

小時候很搗蛋 提問者

題目給的是先加載right再加載left,那能不能先加載left再加載right呢?如果可以的話需要如何去修改?麻煩親解釋一下~
2016-03-30 回復 有任何疑惑可以回復我~
#2

Csunnnnn 回復 小時候很搗蛋 提問者

可以的,加載的順序又語句順序決定。瀏覽器會從上之下逐行讀取代碼顯示到瀏覽器中,所以想要改變元素加載順序,只需要相應調整對應元素在<body>標簽內的先后順序即可。即將 <div class="left">left</div>放置于<div class="right">right</div>前。 但值得注意的是改變加載順序,有可能會影響到內容的板式布局。這一點要特別小心。 樣例見 http://www.xianlaiwan.cn/qadetail/125973 中采納的回答。
2016-03-30 回復 有任何疑惑可以回復我~
#3

小時候很搗蛋 提問者 回復 Csunnnnn

好的~謝謝..
2016-03-31 回復 有任何疑惑可以回復我~
#4

qq_經6吳素文_03163701 回復 Csunnnnn

請問不能用float來實現這個效果嗎
2016-04-20 回復 有任何疑惑可以回復我~
#5

Csunnnnn 回復 qq_經6吳素文_03163701

float只能在沒有被占據的空間里浮動,已被占據的空間里是放不下float元素的。
2016-04-20 回復 有任何疑惑可以回復我~
查看2條回復

是每種課程內的WIKI內嗎?怎么找不到?。?a >其,

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

這里為什么不能用浮動那,看你們都是用定位來實現,有大神能解釋下嗎

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

<style type="text/css">

body{ margin:0; padding:0; font-size:30px; color:#fff}

.top{height:100px; background:#ccc;} //寬度自適應時不需要設定寬度

.main{height:500px; background:red; position:relative;} //main中包含一左一右兩個盒子,子級盒子需絕對定 ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?位,所以父級盒子要相對使用定位

.left{width:200px; height:500px; background:blue; position:absolute; top:0; left:0;}//左盒子上左緊貼main盒子

.right{height:500px; background:green; margin:0 0 0 220px;}margin四個值分別為上右下左,左盒子寬200px,多出20px是為了左右兩個盒子的“圖中紅色”距離

.foot{height:50px; background:yellow;}

</style>

ps:顏色沒有完全按照它的那個設置,但是整體效果出來了。希望可以幫到你。

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

使用 絕對定位position:absolute;需要 父級元素 相對定位position:relative;使用,否則絕對定位相對最外側的定位元素定位(沒有則相對body)

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

<!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}

.top{background:#999; height:200px;}

.main{background:red;position:relative;}

.left{display:block;width:200px;height:500px;background:blue; position:absolute;left:0;top:0px;}

.right{display:block; height:500px;margin:0 0 0 210px; background:green;}

.foot{background:orange;height:100px;}

</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

qincai

div本是塊級元素,為什么還要寫display:block;
2016-03-29 回復 有任何疑惑可以回復我~

舉報

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

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

進入課程

求大神給個這章有批注的答案代碼

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

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

幫助反饋 APP下載

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

公眾號

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