为了账号安全,请及时绑定邮箱和手机立即绑定

我的中间部分为什么空了那么多空白

<!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:100px; background:#ccc;}
.main{ background:#000;}
.left{ width:200px;height:600px;  background:blue;float:left;}
.right{ height:600px; background:green;float:right;margin-left:10px;}
.foot{ height:80px; background:yellow; 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>

正在回答

5 回答

div加了float之后就不再是block,而是变成了inline-block,所以只有内容撑开的那么宽

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

小鱼儿muma3724484 提问者

非常感谢!
2016-08-15 回复 有任何疑惑可以回复我~

首先你要知道,DIV是一个块级元素,当你不设定它的宽度时,会无限延迟宽度,你这行代码,父级没有设置宽度,设置的右浮动,默认无限向右边了,如果想做出效果。建议跟着别人代码做一遍。

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

.right{ height:600px; background:green;float:right;margin-left:10px;}  这是你的right 设置了float,一旦漂起来,宽度丢失,而且你也没设置宽度,所以,里面内容有多宽,right就有多宽;你可以设置成position:absolute;再用right:0 来定位

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

.right{ height:600px; background:green;float:right;margin-left:10px;} 加上width属性

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

因为你的.right未设定宽度,默认为自适应。right文字占多宽,就是多宽

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

举报

0/150
提交
取消
如何用CSS进行网页布局
  • 参与学习       209624    人
  • 解答问题       1153    个

用最简洁的案例教你布局的那些知识,这是前端工程师基本技能

进入课程

我的中间部分为什么空了那么多空白

我要回答 关注问题
意见反馈 帮助中心 APP下载
官方微信