如何设置CSS 让页面头部和底部固定 中间内容滚动?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何设置CSS 让页面头部和底部固定 中间内容滚动?相关的知识,希望对你有一定的参考价值。

就是头部贴页面顶部,底部贴页面底部。全屏的时候,刚好页面是没有滚动条的。
当页面缩小的时候,头部和底部还是固定在两头,让中间部分产生滚动条。

页面分成了三个部分,三个部分分开写在不同的页面里,然后调用。整体是这样的模式:
<div>
<% html.RenderPartial("HeadUserControl"); %>
</div>

<div>

<asp:ContentPlaceHolder ID="MainContent" runat="server">
</asp:ContentPlaceHolder>
</div>

<div>
<% Html.RenderPartial("FootUserControl"); %>
</div>

怎麼弄也弄不好,朋友们救救命啊!先谢谢了!

  底部和头部分别定义两个div,在利用position:fixed;分别设置它们的位置。

  position 属性规定元素的定位类型。
  说明
  这个属性定义建立元素布局所用的定位机制。任何元素都可以定位,不过绝对或固定元素会生成一个块级框,而不论该元素本身是什么类型。相对定位元素会相对于它在正常流中的默认位置偏移。

  fixed
  生成绝对定位的元素,相对于浏览器窗口进行定位。
  元素的位置通过 "left", "top", "right" 以及 "bottom" 属性进行规定。
  
参考技术A I服了楼上的YOU们!

<style type="text/css">
<!--
html,body height: 100%;
body
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;

.top,.bottom
position: absolute;
width: 100%;
left: 0px;
height: 10%;
background-color: #000000;

.top top: 0px;
.bottom bottom: 0px;
.main
background-color: #00CC66;
overflow-y: scroll;
position: absolute;
top: 10%;
bottom: 10%;
height: 80%;
width: 100%;

-->
</style>
</head>

<body>
<div class="top">TOP</div>
<div class="bottom">BOTTOM</div>
<div class="main">CONT</div>
</body>

如果你要固定高度,将10%转换一下数值就可以了。具体的CSS写法忘了,你去查查了。
参考技术B <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<style type="text/css">
<!--
body
margin:0;
padding:0;

.top
position:fixed;
left:0;
top:0;
height:100px;
width:100%;
background:#000;

.main

background-color: #00CC66;

height: 1000px;
margin-top:100px;
margin-bottom:100px;
padding-bottom:20px;
width: 100%;

.bottom
position:fixed;
left:0;
bottom:0px;
height:100px;
width:100%;
background:#000;

/*IE6 fixed bug*/
* htmloverflow:hidden;
* html bodyoverflow:auto;margin:0;
* html .bottomposition:absolute;left:0;bottom:0px;
* html .topposition:absolute;left:0;top:0px;
-->
</style>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>无标题文档</title>
</head>
<body>
<div class="top">TOP</div>
<div class="main">
CONT
CONT
CONTCONT
CONT
CONT
CONT
<div style="margin-top:980px;color:#fff;">底部</div>
</div>
<div class="bottom">BOTTOM</div>
</body>
</html>

参考资料:http://www.losever.com/?s=div%2Bcss

本回答被提问者采纳
参考技术C DIV做这样的要配合JS,你用框架集做吧!效果一样的,你搜frameset ! 参考技术D 页面头部和底部的css样式用 position:fixed;

table左边固定-底部横向滚动条

是日有需求,曾探讨过table表单头部、尾部固定不动,中间内容随着滚动条的滚动而变化。

整合资料之际,发现有很多表格,表单展现中,横向数据很多、很长,不方便查看。

则,横空霹雳出了,此款:table表单左边固定,底部滚动条左右滑动展现数据demo。

原理很简单:在 table外面嵌套一层div ,并且设置此父div {overflow: auto;}.此举为了出席横向滚动条

对里面的tr设置{position: relative;}相对定位 对tr里面的第一个td设置fixed

.fixed { position: fixed; background: #069DD5!important; color: #fff; width: 37px; height: 30px; line-height: 30px; }

同时为了撑开 左边固定的位置,在第二个td位置,设置一个空的td

  .td-empty { width: 60px; height: 30px; padding: 0!important; display: inline-block; } 则可实现,table表单左边第一列固定,拖动底部滚动条进行滚动显示数据。

可参考 之前写的 http://www.cnblogs.com/leshao/p/5697177.html (table头部、尾部固定;中间内容定高自适应滚动)

特此鸣谢 Ruthless。

参考了 Ruthless的 http://www.cnblogs.com/linjiqin/archive/2013/06/21/3148225.html#undefined文章,得以完善

感谢 lost,雨安合一 等

下载地址

http://files.cnblogs.com/files/leshao/table%E5%B7%A6%E8%BE%B9%E5%9B%BA%E5%AE%9A-%E5%BA%95%E9%83%A8%E6%A8%AA%E5%90%91%E6%BB%9A%E5%8A%A8%E6%9D%A1.rar

以上是关于如何设置CSS 让页面头部和底部固定 中间内容滚动?的主要内容,如果未能解决你的问题,请参考以下文章

如何让DIV固定在页面而不随着滚动条随意滚动

如何让DIV随着左右滚动条移动,上下滚动条不变

如何让footer始终在页面底部的方法

table左边固定-底部横向滚动条

css 如何设置底部固定

jsp网页移动滚动条怎么做到头部不动,就中间和下部动?