Ladyseven 2010-08-31
本文和大家重点讨论一下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?
background-color: blue;background-color: yellow;<input type="button" value="变蓝" @click="changeColorT