.header固定定位后,.banner的设置

.header固定定位后,.banner的设置

.header固定定位后会覆盖其他未设置定位的元素,为了完整显示.banner的内容,可以设置padding-top,但是为何设置.banner的margin-top:50px后,.header也跟随显示margin-top属性?

http://img1.sycdn.imooc.com/climg//58ec4c5700012b7519170244.jpg

.header{
    width: 100%;height: 50px;background-color: #333;
    margin:0 auto;/*水平居中*/
    line-height: 50px;/*垂直居中-单行文本*/
    position: fixed;/*固定定位*/
}
.banner{
    width: 800px;height: 300px;background-color: #30a457;
    margin: 0 auto;
    /*防止内容被header覆盖*/
    margin-top: 50px;
    /*padding-top: 50px;*/
    position: relative;
}

正在回答 回答被采纳积分+1

登陆购买课程后可参与讨论,去登陆

2回答
晚小鱼 2017-04-20 11:27:13

.为什么不加  top: 0;他居然随下面的块级元素增加的margin-top而变啊?

小于飞飞 2017-04-11 14:26:02

你好,给.header 设置 top:0px , 就可以解决问题了呦。希望对你有帮助,祝学习愉快。

  • 为什么不加 top: 0;他居然随下面的块级元素增加的margin-top而变啊?
    2017-04-20 11:36:30
  • 你好,当一个元素的position被设置为fixed,而 top、bottom、left、right未指定时 , 他还是在原来位置,不会自动到浏览器顶部。可以在这两个元素(.header和.banner)外添加一层,测试效果,它会收上下文的样式设置影响,同样在外层设置padding也会影响到它,当设置了top、bottom、left、right这些后,完全以浏览器来定位了。可以这样通俗的理解。
    2017-04-20 14:56:07
问题已解决,确定采纳
还有疑问,暂不采纳

恭喜解决一个难题,获得1积分~

来为老师/同学的回答评分吧

0 星
前端小白入门系列课程
  • 参与学习           人
  • 提交作业       11218    份
  • 解答问题       36713    个

从一个不会编程的小白到一个老司机是需要过程的,首先得入门,学习基础知识,然后才能进阶,最后再到精通,本专题是你走进前端世界的不二选择!

了解课程
请稍等 ...
意见反馈 帮助中心 APP下载
官方微信

在线咨询

领取优惠

免费试听

领取大纲

扫描二维码,添加
你的专属老师