三、多行文本固定高度的居中
在本文的一开始,我们已经说过CSS中的vertical-align属性只会对拥有valign特性的(X)HTML标签起作用,但是在CSS中还有一个display属性能够模拟<table>,所以我们可以使用这个属性来让<DIV>模拟<table>就可以使用vertical-align了。注意,display:table和display:table-cell的使用方法,前者必须设置在父元素上,后者必须设置在子元素上,因此我们要为需要定位的文本再增加一个<DIV>元素:
广州网站建设,网站建设,广州网页设计,广州网站设计
ExampleSourceCode
- DIV#wrap{
- height:400px;
- display:table;
- }
- DIV#content{
- vertical-align:middle;
- display:table-cell;
- border:1pxsolid#FF0099;
- background-color:#FFCCFF;
- width:760px;
- }
SourceCodetoRun
- <!DOCTYPEhtmlPUBLIC"-//W3C//DTDXHTML1.0Transitional//EN"
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
- <htmlxmlnshtmlxmlns="http://www.w3.org/1999/xhtml">
- <head>
- <title>52CSS.com</title>
- <metahttp-equivmetahttp-equiv="Content-Type"content="text/html;charset=utf-8"/>
- <styletypestyletype="text/css">
- body{font-size:12px;font-family:tahoma;}
- DIV#wrap{
- height:400px;
- display:table;
- }
- DIV#content{
- vertical-align:middle;
- display:table-cell;
- border:1pxsolid#FF0099;
- background-color:#FFCCFF;
- width:760px;
- }
- </style>
- </head>
- <body>
- <DIVidDIVid="wrap">
- <DIVidDIVid="content"><pre>现在我们要使这段文字垂直居中显示!
- DIV#wrap{
- height:400px;
- display:table;
- }
- DIV#content{
- vertical-align:middle;
- display:table-cell;
- border:1pxsolid#FF0099;
- background-color:#FFCCFF;
- width:760px;
- }
- </pre></DIV>
- </DIV>
- </body>
- </html>
[可先修改部分代码再运行查看效果] 这个方法应该是很理想了,但是不幸的是InternetExplorer6并不能正确地理解display:table和display:table-cell,因此这种方法在InternetExplorer6及以下的版本中是无效的。嗯,这让人很郁闷!不过我们还其它的办法。
广州网站建设,网站建设,广州网页设计,广州网站设计



