关于内层DIV设置margin-top不起作用的解决方案

(一)

近日在做另外一个站点的时候,又遇到这个问题,决定好好的研究解决一下。

代码如下:

上部层


     

<p style="margin-top:200px;”>子层

理想中的效果是父层和上部层贴边显示,子层距离父层顶部有200px的距离,在ie中正常,但是在ff中却出现问题,子层和父层贴边了,而父层和上部层却间隔了200px。

百思不得其解,求助google,得到如下的一句:

当两个容器嵌套时,如果外层容器和内层容器之间没有别的元素,firefox会把内层元素的margin-top作用与父元素。

也就是说因为子层是父层的第一个非空子元素,所以使用margin-top会发生这个错误。

解决的办法有两个:

1、使用浮动来解决,即将子层代码改为:

子层

2、使用padding-top来解决,即:

    

子层

 

(二)

常常可以碰到这样一个问题,就是外层p设置了高与宽,内层p如果设置maring-top不起作用(FIREFOX和IE8中测试),原因大致是内层p没有获得布局。如下面的代码:

.ap {padding-top:red; width:300px; height:300px; }
.bp {background:green; padding-top:relative; width:100px; height:20px; margin-top:10px;}
.cp {background:black; position:relative; width:100px; height:20px;}

测试发现,bp的margin-top不起作用,仍是0px的显示效果。如果在firefox中用firebug查看,可以看到margin-top是有值的,为10px;解决问题如下:

1、把margin-top改成padding-top,不过,前提是内层的p没有设置边框
2、给外层的p加padding-top
3、给外层p加:

A、float: left或right

B、position: absolute

C、display: inline-block或table-cell或其他 table 类型

D、padding-top: hidden或auto

 

比如,可以更改上述代码如下:

.a {background:red; width:300px; height:300px; float:left; }
.b {background:green; position:relative; width:100px; height:20px; margin:10px;}
.c {background:black; position:relative; width:100px; height:20px;}

.clear{ clear:both;}

注意:后面要加一个padding-top。

以上就是关于内层DIV设置margin-top不起作用的解决方案的详细内容,更多请关注【创想鸟】其它相关文章!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至253000106@qq.com举报,一经查实,本站将立刻删除。

发布者:PHP中文网,转转请注明出处:https://www.chuangxiangniao.com/p/3123076.html

(0)
上一篇 2025年3月29日 18:29:49
下一篇 2025年3月29日 18:30:04

AD推荐 黄金广告位招租... 更多推荐

相关推荐

  • 如何给background-image设置透明度?

    如题,现在是没法改图片本身的透明度,该图片以 background-image 写在 css 里,不知道有没有办法给他设置透明度? div{    position: relative;        }div:after{    cont…

    编程技术 2025年3月29日
    100
  • html的滚动条样式设置

    如果需要对div设置一个滚动条,那么你可能需要设置滚动条的样式,横向或者纵向,需要用overflow-y和overflow-y来设置,今天就来给大家说一下这俩个属性。 对div设置滚动条,设置其横向滚动条和纵向滚动条样式。所需CSS样式为o…

    编程技术 2025年3月29日
    100
  • HTML里字体颜色怎么设置

    做网站时肯定想让自己网站的内容多姿多彩,那么就可能要改变黑色的字体,怎样设置网页的字体颜色呢?今天就给大家来简单介绍一下。 DIV字体颜色 DIV内文字颜色设置篇 用到css样式单词:color div标签内设置字体颜色 DIV标签内设置字…

    编程技术 2025年3月29日
    100
  • CSS里字体样式怎么设置

    在网页中我们常常对网页中文字设置字体,用font-family这个属性就可以对字体样式进行设置了。那么我们今天就来教大家从html的字体到font-family的设置方法。 原始的html字体设置   Html的文字字体设置代码: 我是黑体…

    编程技术 2025年3月29日
    100
  • 网页制作中margin-top的实例教程

    在html里,margin-top是设置该对象的距离与上一个对象的间距,他是设置对象边框以外间距距离css样式。今天就来带大家好好认识一下margin-top margin-top语法 .div{margin-top:10px}  设置了对…

    编程技术 2025年3月29日
    100
  • CSS的文本字体颜色如何设置

    这里要介绍的是网页设置颜色包含有哪些;网页颜色规定规范。 1、常用颜色地方包含:字体颜色、超链接颜色、网页背景颜色、边框颜色 2、颜色规范与颜色规定:网页使用RGB模式颜色 网页中颜色的运用是网页必不可少的一个元素。使用颜色目的在于有区别、…

    编程技术 2025年3月29日
    100
  • WPS文字中设置个性化网格线的技巧

    轻松设置wps文字文档网格,提高排版效率!本文将指导您如何在wps文字中设置25行每页的文档网格,并保存为模板以便下次直接使用。 打开WPS文字,点击菜单栏“视图”,勾选“网格线”以显示网格。 点击菜单栏“页面布局”,选择“纸张大小”设置。…

    2025年3月29日 互联网
    100
  • WPS文字中巧用段落来设置行距

    第一步,选中需要调整格式的文章内容(全文或部分段落均可)。本例以全文为例,讲解如何设置行距:使用快捷键ctrl+a全选文本,然后右键点击,选择“段落”设置。 在弹出的“段落”对话框中,找到“缩进和间距”选项卡,在“间距”区域调整“行距”数值…

    2025年3月29日
    100
  • 豆包ai智能体设置 豆包ai智能体是人工审核吗

    在ai应用中,您是否经常重复提问,尤其在熟悉的领域?如果能整合常用问题,一键完成交互,是不是很方便?个人智能体就能做到! 快速创建您的专属豆包AI智能体 第一步:创建您的AI智能体 访问豆包官网:www.doubao.com 或在应用商店下…

    2025年3月29日 互联网
    100
  • 设置一下tr的背景色,目前看上去非常不舒服_html/css_WEB-ITnose

    在table里设置了cellspacing属性导致tr的背景色断断续续,不知道有没有那个大哥或大姐会 把空隙部分的背景色也加起来 回复讨论(解决方案) 为了让小弟可以多问几个问题,节约点分数,呵呵 顺带问一下:  怎么设置html父容器的宽…

    编程技术 2025年3月28日
    100

发表回复

登录后才能评论