- 1、本文档共23页,可阅读全部内容。
- 2、有哪些信誉好的足球投注网站(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
css经典布局——头尾固定高度中间高度自适应布局
下面说下要求:
1 头部固定高度,宽度100%自适应父容器;
2 底部固定高度,宽度100%自适应父容器;
3 中间是主体部分,自动填满,浏览器可视区域剩余部分,内容超出则中间部分出现流动条;
4 整个内容填满浏览器可视区域,并且不超出此区域!
先看下效果图:
?
相信,做过两年前端的同学,拿到这个需求,都有一个感觉——这挺简单的!
是的,本来就挺简单!
方法一:position:absolute定位,不设高,并改变包含块的尺寸渲染
从我脑海崩出来的第一个念头就是定位布局——position
而我也是这么做的,因为要固定头尾,所以,至少头和尾要用到position定位。因为浏览器大小是可以调节的,而且不同尺寸,不同分辨率的浏览器可视区域的高度是不固定的,
这就决定是中间主体部分的高度不固定。所以真正的问题核心也正在此。解决了这个问题,整个布局也就解决了一多半。
上代码,相信这也是符合大部分思路的实现方式:
!DOCTYPE HTML
html
head
meta charset=gb2312
title头尾固定中间高度自适应布局/title
style
html, body {
height:100%;
margin:0;
padding:0
}
#dHead {
height:100px;
line-height:100px;
background:#690;
width:100%;
position:absolute;
z-index:5;
top:0;
text-align:center;
}
#dBody {
background:#FC0;
width:100%;
overflow:auto;
top:100px;
position:absolute;
z-index:10;
bottom:100px;
}
.mycontent {
padding:20px;
}
#dFoot {
height:100px;
line-height:100px;
background:#690;
width:100%;
position:absolute;
z-index:200;
bottom:0;
text-align:center;
}
/style
/head
body
div id=dHead固定头部100px;/div
div id=dBody
div class=mycontent 中间自适应部分br
中间自适应部分br
/div
/div
div id=dFoot固定尾部100px/div
/body
/html
结果也如上图所示,预期已经达到。经测试:IE7+、firefox、chrome、safari、opera均通过测试!
这里有点要特别说明的地方:当容器被position:absolute或者float:left or right的时候,在没有设定宽度的情况下窗口的表现为紧贴内容;
!DOCTYPE HTML
html
head
meta charset=gb2312
title无标题文档/title
style
*{padding:0;margin:0}
/style
/head
body
div style=height:200px;position:absolute; background:#FF9900;内容测试/div
/body
/html
?
看下效果图:
但是如果在position:absolute下,同时设定left和right或者同时设定top和bottom的话。宽度和高会被拉伸到指定位置,需要说明的这就是宽度或者高度缺省时position:absolute or fixed 情况下,浏览器对容器的尺寸解析方式。
需要说明的是,对于一个浮动元素,如果不设定宽度,同样采用“包含块”的渲染方式,宽度取决于内容的宽度。但是,如果这个浮动元素内部有一个右浮动的子元素,宽度会扩展到父容器的宽度。这个就不给出具体的例子了,自己可以下去测试。另外可以表现为“包含块的”还有display:inline-block 当然,IE 如果display inline 如果 has a layout 同样会表现出“包含块”渲染。这里就不深入探讨了。
下面对于position:absolute or fixed 定位的“包含块”,做一个渲染测试。
!DOCTYPE HTML
html
head
meta charset=gb2312
tit
您可能关注的文档
最近下载
- 2025年机动车检验机构资质认定评审补充技术要求试题(含答案) .pdf VIP
- 2024年眉山市遴选和选调公务员真题 .docx
- 高校基建工程项目全过程跟踪审计.PPT
- 提捞采油安全操作规程.doc VIP
- PT1-aTrust题库_aTrust题库考试认证.docx VIP
- 14T MRI用Nb₃Sn卢瑟福电缆绞缆工艺与性能的深度剖析及优化策略.docx
- 水阻柜工作原理-源创YRQ水阻柜.doc VIP
- 工作场所空气中粉尘测定第6部分超细颗粒和细颗粒总数量浓度_职业卫生标准培训讲座PPT.pptx VIP
- 北京理工大学信号与系统实验报告.docx VIP
- 2025年新高考1卷数学模拟试题 (1).pdf
文档评论(0)