CSS教程:Firefox浏览器下margin-top问题

2016-02-20 00:25 9 1 收藏

清醒时做事,糊涂时读书,大怒时睡觉,无聊时关注图老师为大家准备的精彩内容。下面为大家推荐CSS教程:Firefox浏览器下margin-top问题,无聊中的都看过来。

【 tulaoshi.com - Web开发 】

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)

 很早之前就有发现这个问题,也慢慢的摸索出了一些避免这个问题的规律,但是因为比较懒,迟迟没有细究原因,今天再次遇到,忍无可忍...一探究竟。



   长出现两种情况

  (一)margin-top失效  
   先看下面代码:

(本文来源于图老师网站,更多请访问https://www.tulaoshi.com/webkaifa/)div
div class="box1" float:left/div
div class="box2"clear:both; margin-top:20px;/div
/div

  两个层box1和box2,box1具有浮动属性,box2没有,这时候设置box2的上边距 margin-top没有效果。


[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

 网上能找到的两种比较靠谱的解释:1:在css2.1中,水平的margin不会被折叠;垂直margin可能在一些盒模型中被折叠2:当第一个层浮动,而第二个没浮动层的margin会被压缩,详见--浮动元素后非浮动元素的margin的处理()。

得到解决问题思路:要浮动一起浮动,要就一起不浮动。

解决办法:

1.box2增加float属性
2.box1与box2之间增加一层"div style="clear:both;"/div"

  (二)子元素设置margin-top作用于父容器

div class="box" style="height:100px;background:red;"
  div class="box2"clear:both; margin-top:20px;height:50px;width:500px;background:#000;/div
/div

当给box2设置margin-top时,在FF下仅作用于父容器。


[Ctrl+A 全部选择 提示:你可先修改部分代码,再按运行]

解决办法:

1.给父容器box加overflow:hidden;属性
2.父容器box加border除none以外的属性
3.用父容器box的padding-top代替margin-top

自己工作中遇到的总结,可能会有不严谨的地方,如有发现希望指出!

来源:https://www.tulaoshi.com/n/20160220/1631802.html

延伸阅读
标签: Web开发
很多时候,希望能够在 HTML 中使用空格排版。但浏览器在解析 HTML 时,会把连续的空格解析成一个,所以我们会使用  等这样的占位符。 但是   也不是很可靠,比如空格间距非常大,那么我们必须增加多个占位符,同时页面的体积会变得非常大。 同时,注意到 Safari 中的   宽度是已设定字符的空格宽度...
标签: Web开发
我很久以前就开始计划着整理一下CSS选择器的浏览器支持,因为CSS3增加了很多非常有用的选择器。CSS属性选择器制作个性化链接样式作为对CSS选择器的初步研究。 kimblim网站整理了一份很全面的CSS选择器支持情况,我将其翻译过来并进行进一步的整理,将其尽可能的简化。同时结合evotech网站整理的CSS选择器支持列表,以及我自己平时总结的一...
标签: Web开发
网页设计遇到最大的麻烦之一莫过于网页对不同浏览器的兼容性问题了,因为IE 6.0 / IE 7.0 / firefox 2 / Opera 9等主流浏览器对CSS解析不近相同,导致设计的页面效果不一样,所以用什么方法可以有效解决不同浏览器不同页面效果的问题呢?广泛被使用的方法就是CSS Hack,即使用特别的CSS定义显示网页在不同浏览器的设计风格,针对不同的浏览器去...
标签: 浏览器
Firefox和Opera浏览器哪个好 火狐浏览器 火狐浏览器(Mozilla Firefox)是由Mozilla开发的网页浏览器,采用Gecko网页排版引擎,支持多种操作系统,开放源代码以多许可方式授权,包括Mozilla公共许可证(MPL)、GNU通用公共授权条款(GPL)以及GNU较宽松公共许可证(LGPL),目标是要创造一个开放,创新与机遇的网络环境。 第三方插件...
标签: 浏览器
Firefox和115浏览器哪个好 火狐浏览器 火狐浏览器(Mozilla Firefox)是由Mozilla开发的网页浏览器,采用Gecko网页排版引擎,支持多种操作系统,开放源代码以多许可方式授权,包括Mozilla公共许可证(MPL)、GNU通用公共授权条款(GPL)以及GNU较宽松公共许可证(LGPL),目标是要创造一个开放,创新与机遇的网络环境。 第三方插件众...

经验教程

931

收藏

16
微博分享 QQ分享 QQ空间 手机页面 收藏网站 回到头部