HTML+CSS入门 CSS布局实现上中下三行、中间自适应解析
沉沙 2018-06-21 来源 : 阅读 3575 评论 0

摘要:本篇教程讲解了CSS布局如何实现上中下三行、中间自适应,希望阅读本篇文章以后大家有所收获,帮助大家HTML+CSS的入门。

  上中下三行布局,上下定高,中间栏自适应浏览器高度,且内容垂直居中。 
  firefox 2.0 / win ie 6/ win ie 7 /opera 8.5 cn/win safari 测试通过。 
  对于非ie内核浏览器,通过设定display:table、display:table-row和display:table-cell来模拟表格的表现形式。 
  最外层#box { display:table; },高度100%,其子层#header/#main/#footer为{ display:table-row; },因此可以模拟表格的行效果,上下定高,则中间不定高的层自适应高度。 
  #wrap层为{ display:table-cell; }模拟单元格,因此可以设定{ vertical-align:middle; },垂直居中。 
  由于Win IE不支持{ display:table; },因此,只能采取定位的方式实现。<!--[if IE]>内是针对ie的设定。 
以下为引用的内容:

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "//www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="//www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" /> 
<title>上中下三行布局,上下定高,中间栏自适应浏览器高度,且内容垂直居中</title> 
<style type="text/css"> 
* { 
margin:0; 
padding:0; 
} 
html, 
body, 
#box { 
height:100%; 
font:small/1.5 "宋体", serif; 
} 
body { 
text-align:center; 
} 
#box { 
text-align:left; 
background:#666; 
display:table; 
width:80%; 
margin:0 auto; 
position:relative; 
} 
#box > div { 
display:table-row; 
} 
#header, 
#footer { 
background:#fcc; 
height:50px; 
} 
#main { 
background:#ccf; 
} 
#main #wrap { 
display:table-cell; 
background:#ffc; 
vertical-align:middle; 
} 
#text { 
text-align:center; 
} 
</style> 
<!--[if IE]> 
<style type="text/css"> 
#header, 
#footer { 
width:100%; 
z-index:3; 
position:absolute; 
} 
#footer { 
bottom:0; 
} 
#main { 
height:100%; 
z-index:1; 
position:relative; 
} 
#main #wrap { 
position:absolute; 
top:50%; 
width:100%; 
text-align:left; 
} 
#main #text { 
position:relative; 
width:100%; 
top:-50%; 
background:#ccc; 
} 
</style> 
<![endif]--> 
</head> 
<body> 
<div id="box"> 
<div id="header">header</div> 
<div id="main"> 
<div id="wrap"> 
<div id="text"> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
<p>内容内容</p> 
</div> 
</div> 
</div> 
<div id="footer">footer</div> 
</div> 
</body> 
</html>


本文由职坐标整理并发布,希望对同学们有所帮助。了解更多详情请关注职坐标WEB前端HTML/CSS频道!

本文由 @沉沙 发布于职坐标。未经许可,禁止转载。
喜欢 | 1 不喜欢 | 0
看完这篇文章有何感觉?已经有1人表态,100%的人喜欢 快给朋友分享吧~
评论(0)
后参与评论

您输入的评论内容中包含违禁敏感词

我知道了

助您圆梦职场 匹配合适岗位
验证码手机号,获得海同独家IT培训资料
选择就业方向:
人工智能物联网
大数据开发/分析
人工智能Python
Java全栈开发
WEB前端+H5

请输入正确的手机号码

请输入正确的验证码

获取验证码

您今天的短信下发次数太多了,明天再试试吧!

提交

我们会在第一时间安排职业规划师联系您!

您也可以联系我们的职业规划师咨询:

小职老师的微信号:z_zhizuobiao
小职老师的微信号:z_zhizuobiao

版权所有 职坐标-一站式IT培训就业服务领导者 沪ICP备13042190号-4
上海海同信息科技有限公司 Copyright ©2015 www.zhizuobiao.com,All Rights Reserved.
 沪公网安备 31011502005948号    

©2015 www.zhizuobiao.com All Rights Reserved

208小时内训课程