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

帮忙看一下,为什么我设置了外边距和填充为0px,顶部还有空间?

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8">
<title>Document</title>
<style>
body {
margin:0;
padding:0;
}
.main{
text-align: center;
margin: 0 auto;
width: 960px;
fint-size:30px;
}
div>p:nth-child(1){
background:red;
width: 300px;
float:left;
height: 600px;
}
div>p:nth-child(2){
background:#ccc;
width: 660px;
float:right;
height: 600px;
}
</style>
</head>
<body>
<div>
<p>left</p>
<p>right</p>
</div>
</body>
</html>

这么是我自己写的,浏览器截图如下。有空间。

http://img1.sycdn.imooc.com//591b06180001a06a10230074.jpg

<!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>
body{ margin:0; padding:0; font-size:30px; font-weight:bold}
div{ text-align:center; line-height:50px}
.main{ width:960px; height:600px; margin:0 auto}
.left{ width:300px; height:600px; background:#ccc; float:left}
.right{ width:660px; height:600px; background:#FCC; float:right}
</style>
</head>

<body>
<div class="main">
    <div class="left">left</div>
    <div class="right">right</div>
</div>
</body>
</html>

这个是课程的代码,顶部与浏览器之间没有空隙,是真正的0px。

http://img1.sycdn.imooc.com//591b066f00018c8410660135.jpg

我初步怀疑是p标签的原因,但是我设置了p标签的margin也是0px,测试还是一样与顶部有空间。请大神帮忙解答一下。

正在回答

3 回答

首先<div>是忘记加class=“main”了。其次,你可以用浏览器中的开发者者工具查看各个模块的布局。选项->工具->开发者工具.。问题是div那个盒子没有height,而里面的两个块级元素p设置了浮动,脱离了文档流,那么div就无法撑开,即使设置了margin:0 auto;也没用。还有就是应该是font-size,不是fint-size。

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

<!DOCTYPE html>
<html>
<head>
   <meta charset="UTF-8">
   <title>Document</title>
   <style>
       body {
           margin:0;
           padding:0;
       }
       .main{
           text-align: center;
           margin: 0 auto;
           width: 960px;
           fint-size:30px;
       }
       div>p:nth-child(1){
           margin: 0 auto;
           background:red;
           width: 300px;
           float:left;
           height: 600px;
       }
       div>p:nth-child(2){
           background:#ccc;
           margin: 0 auto;
           width: 660px;
           float:right;
           height: 600px;
       }
   </style>
</head>
<body>
<div class="main">
   <p >left</p>
   <p >right</p>
</div>
</body>
</html>

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

脑袋空空空想家

首先你的<div>中忘了加class=main,然后我在left和right的样式里面加上了:margin:0 auto;(居中)然后就获得了你想要的结果,至于为什么会这样,我也是新手,不知道为啥
2017-05-19 回复 有任何疑惑可以回复我~

浏览器兼容问题吧00.0

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

木头227 提问者

同一个浏览器
2017-05-16 回复 有任何疑惑可以回复我~

举报

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

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

进入课程

帮忙看一下,为什么我设置了外边距和填充为0px,顶部还有空间?

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