CSS display:block显示布局错乱解决方案

开发 前端
对于某一单元行需要显示时,使用CSS display:block属性,不需要显示时使用display:none属性,在IE浏览器中显示正常,没有任何问题,但是当用Firefox浏览时却出现了布局错乱的问题,这是为什么呢?

本文向大家介绍一下如何解决CSS display:block在Firefox下显示布局错乱问题,按照常理,对于某一单元行需要显示时,使用CSS display:block属性,在IE浏览器中显示正常,但是当用Firefox浏览时却出现了布局错乱的问题,这里和大家分享一下解决方法。

CSS display:block在Firefox下显示布局错乱问题

按照常理,对于某一单元行需要显示时,使用CSS display:block属性,不需要显示时使用display:none属性,而且这样做在IE浏览器中显示正常,没有任何问题。

但是当用Firefox浏览时却出现了布局错乱的问题,然后通FireBug去看了下源码,调试下了,发现是CSS display:block属性搞的鬼。

1、当表格为多列的情况下,属性为"CSS display:block"行的内容宽度仅与第一列宽度相同,也就是说无论你使colspan的属性值为多少,剩余列的空间都不进行解析。

2、同一行反复的在"CSS display:none;"与"CSS display:block;"两个状态间切换时,表格的底部会持续的产生多余的空白空间以至于造成页面布局的扭曲。

解决方法:

1、用CSS display:table-row属性来调试,发现者FireFox下正常了,但IE是不支持改属性的,怎么办呢?用JS来做判断,然后做兼容吧。

2、另外一个很简单也很可行的方法,就是用display:''这个属性dispaly后面不加任何的东西,很奇怪,这样就兼容了Firefox和IE了。

原文地址:http://www.baybey.net/post/cssdisplayfirefoxhack.html

【编辑推荐】

  1. CSS display:inline和float:left两者区别
  2. 探究CSS hack使用原理 规则及弊端
  3. CSS display属性基本特性和语法
  4. CSS属性display:inline-block使用揭秘
  5. CSS hack:实现IE6、IE7、Firefox兼容


 

责任编辑:佚名 来源: baybey.net
相关推荐

2010-09-02 12:58:21

display:inlCSS

2010-09-16 09:13:09

CSS display

2010-09-16 09:33:33

CSS displayCSS display

2010-09-03 10:18:06

CSSdisplay:inl

2010-09-14 15:32:51

CSSdisplay:inl

2010-08-23 14:06:57

DIV+CSS

2010-09-07 13:24:18

CSS

2022-04-07 07:31:30

CSSCSS Reset前端

2010-08-05 13:20:41

Flex最优布局

2022-11-07 13:59:05

Android插件化框架

2010-09-02 09:09:38

display:inlCSS

2010-09-09 15:44:21

IEFFCSS

2022-04-19 06:27:13

CSS数学函数calc

2023-09-11 07:11:04

CSSNesting

2010-05-31 12:38:48

Nagios中文

2009-08-28 10:28:11

Windows 7系统故障应对IE页面错乱显示

2010-09-06 14:46:25

CSSXHTML

2015-09-16 10:22:50

UCloud

2013-03-26 11:20:08

Eclipse无法显示

2010-08-23 09:53:41

DivCSSweb
点赞
收藏

51CTO技术栈公众号