<body>
<div class="div1">已知div元素</div>
<div class="x">X元素</div>
</body>css:<style>
div{width:200px;margin: 0;padding: 0;}
div.div1{height:35px;background: pink;position: fixed; }
div.x{background: green;margin: 15px 0 0;height: 40px;}
</style>
5 回答
肥仔汇
TA贡献6条经验 获得超5个赞
margin: 15px 0 0;
你这一句只设置了三个
分别对应
上 15px
左右 0px
下 0px
div1脱离文档流的
你需要在.x中加入position:absolute
这样的话div1就不会有上边距了
修改后代码如下
<style> div{width:200px;margin: 0;padding: 0;} .div1{height:35px;background: pink;position: fixed; } .x{background: green; margin: 15px 0 0;height: 40px; position: absolute;} </style>
加入滚烫开水
TA贡献5条经验 获得超9个赞
当absolute 或 fixed,没给left top这些定位的话,会保持在原位置。
基本的定位大家都会,想深入理解可以看 http://www.imooc.com/learn/192
小尧
TA贡献3条经验 获得超0个赞
body默认没有高度,它根据里面的内容撑开高度,div1脱离文档流,x是标准流、上边距为15px,body根据第一个标准流撑开高度,随x上边距为15px,fixed定位没有设置top/bottom/left/right偏移量定位时,被父层body包含随body位置,当设置了偏移量,则以html为基准偏移,楼主并没有设置偏移量,因此div1随body上边距为15px。
- 5 回答
- 0 关注
- 2250 浏览
添加回答
举报
0/150
提交
取消