Firefox嵌套CSS中div标签居中问题解决方法

本文和大家重点讨论一下Firefox嵌套CSS中div标签的居中问题的解决方法,主要包括使用line-height垂直居中,清除容器浮动,不让链接折行,始终让Firefox显示滚动条等内容。

Firefox嵌套CSS中div标签的居中问题的解决方法

假定有如下情况:

viewplaincopytoclipboardprint?

dividdivid="a"> 


dividdivid="b">div> 



div> 



dividdivid="a"> 


dividdivid="b">div> 



div> 



 

如果要实现b在a中居中放置,一般只需用CSS设置a的text-align属性为center。这样的方法在IE里看起来一切正常;但是在Firefox中b却会是居左的。解决办法就是设置b的横向margin为auto。例如设置b的CSS样式为:margin:0auto;。

最好的解决方案往往是最简单的,这里列出8个CSS技巧,非常简单,简单到只需要写一行代码,只需要定义一个属性参数。非常适合学习CSS的新手朋友阅读。

◆使用line-height垂直居中

line-height:24px;  


 

使用固定宽度的容器并且需要一行垂直居中时,使用line-height即可(高度与父层容器一致)。

◆清除容器浮动

viewplaincopytoclipboardprint?

#main{  


overflow:hidden;  


}  


#main{  


overflow:hidden;  


}  


 

◆不让链接折行

viewplaincopytoclipboardprint?

a{  


whitewhite-space:nowrap;  


}  


a{  


white-space:nowrap;  


}  


 

上面的设定就能避免链接折行,不过个人建议长链接会有相应的这行(有关换行方面的讨论,参看圆心的记录)。

◆始终让Firefox显示滚动条

viewplaincopytoclipboardprint?

html{  


overflow:-moz-scrollbars-vertical;  


}  


html{  


overflow:-moz-scrollbars-vertical;  


}  


 

也可以使用

viewplaincopytoclipboardprint?

body,html{  


min-height:101%;  


}  


body,html{  


min-height:101%;  


}  


 

◆使块元素水平居中

margin:0auto;

其实就是

viewplaincopytoclipboardprint?

margin-left:auto;  


margin-right:auto;  


margin-left:auto;  


margin-right:auto;  


 

这个技巧基本上所有的CSS教科书都会有说明,别忘记给它加上个宽度。Exploer下也可以使用

viewplaincopytoclipboardprint?

body{  


text-align:center;  


}  


body{  


text-align:center;  


}  


 

然后定义内层容器

text-align:left;

◆隐藏Exploertextarea的滚动条

viewplaincopytoclipboardprint?

textarea{  


overflow:auto;  


}  


textarea{  


overflow:auto;  


}  


 

Exploer默认情况下textarea会有垂直滚动条。

◆设置打印分页

viewplaincopytoclipboardprint?

h2{  


page-break-before:always;  


}  


h2{  


page-break-before:always;  


}  


 

page-break-before属性能设置打印网页时的分页。

◆删除链接上的虚线框

viewplaincopytoclipboardprint?

a:active,a:focus{  


outline:none;  


}  


a:active,a:focus{  


outline:none;  


}  


 

Firefox默认会在链接获得焦点(或者点击时)加上条虚线框,使用上面的属性可以删除。

◆最简单的CSS重置

viewplaincopytoclipboardprint?

相关推荐