如果是二栏式分布的页面,一边内容比较长的时候在浏览时,在ie浏览器中浏览正常,但在firefox中浏览时,左右二边不能对齐:
ie浏览器中浏览正常,左右对齐:
firefox中浏览时,左边内容长右边就短:
firefox中浏览时,底部就对不齐:
先查一下css中的定义:
中部内容的css定义: #mainall { width: 760px; height: 100%; padding: 0px !important; /****兼容firefox浏览器*****/ padding: 5px; margin: 0 auto; background: #fff; } 右侧内容的css定义: #rightbox { float: right; padding: 5px; width: 250px; height: 100%; background: #f6f7f9; } |
在ie中,定义高为hight: 100%时,内容自动延伸到页面底部最下面,浏览时没问题,但是在firefox中浏览时,这个hight: 100%好象就是固定成了一个屏幕多一点点的高度,死活也不再往下。是不是这个hight: 100%的问题?删除这个hight: 100%测试一下!成功:)
删除了css中“hight: 100%”定义时,firefox中浏览时底部对齐了:
这说明中部作为整个760背景内容定义的部分,其高度在css中不能定义。如果定义了hight: 100%,ie浏览器中没问题,但firefox中就不买帐。
但是又来了一个问题,这样的话,我要的左侧有个灰背景如何实现?在ie中只要左侧定义了hight: 100%,就会自动延伸到下面的。现在不能用这个定义了,否则在firefox中通不过呀。想想,只能就能变通一下,将#mainall 中的“background: #fff; ”改成“background: #fff;”,删除#rightbox中对于背景颜色的定义“background: #f6f7f9; ”,这样就做一个中间白色、左侧为灰色的背景图片重复一下即可达到相同的效果:
中部内容的css定义: #mainall { width: 760px; padding: 0px !important; /****兼容firefox浏览器*****/ padding: 5px; margin: 0 auto; background: #fff; } 右侧内容的css定义: #rightbox { float: right; padding: 5px; width: 250px; } |
浏览下效果,正常了^-^:
同样,在内容页面中,也一样出现的文章内容与背景不会自动延伸的问题:
在css定义中也会看到“height: 100%”的定义,删除它后,页面浏览就正常了:
/* ===文章内容定义=== */ .articlecontent { padding: 30px 20px 10px 20px; margin: 0px; border: 0px; height: 100% ; width: 95% !important; width: 100%; text-align: left; font-size: 14px; line-height: 150%; background: #fff; } |
小结:firefox浏览器中使用“height: 100%”会固定其高度,而不是自动延伸成100%的高度,这个在ie浏览器中非常非常正常的一个css定义,到firefox浏览器中就会有问题,不过为了兼容,总得研究研究再研究!这个“height: 100%”就象padding一样,要慎用。
对于要使内容能自动伸到页面底部,在box中加上〈div class="clearbox"〉〈/div〉即可。.clearbox的定义如下:
〈div class="clearbox"〉〈/div〉 .clearbox { border-top:1px solid transparent !important; margin-top:-1px !important; border-top:0; margin-top:0; clear: both; visibility: hidden; } |
其用法和作用就是解决浮动元素引起父元素无法获得高度的问题,一般的运用示例::
〈div id="content"〉 〈div id="left"〉〈/div〉 〈div id="right"〉〈/div〉 〈div class="clearbox"〉〈/div〉 〈/div〉 〈div id="bottom"〉〈/div〉 |