html css将表头固定的最直接的方法
建站知识 2021-07-03 08:15www.168986.cn长沙网站建设
position属性取值为fixed时,则元素的位置将不受滚动条的影响,而是直接依据窗口定位,这就是将表头固定的最直接方法,网上其他途径感觉都是在走弯路。与此必须解决两个问题。第一表体将随之不依据表头定位,而是依据body元素定位,表体将上移,导致表体靠上部分被表头遮挡,而且有重影。第二表体的宽高和表头的宽高也将互相独立不再受文档流的约束,这导致单元格对不齐。
解决办法示例如下。其中,单元格上下对齐的问题可以通过设置padding margin 百分比width来解决,表头和表体也可以放在各自的div里。
样式单
<style type="text/css">
{
padding:0px;
margin: 0px;
}
#thead {
/固定表头/
position:fixed;
/ 表头显示层次高于表体,防止空白行和表头重合时出现重影/
z-index:2;
background:#ECECFF;
}
#spacetr{ / 空白的tr 用来填补表头遮盖的数据/
position:relative;
z-index:1;
}
.tdata { / 显示表格数据的tr /
position:relative;
z-index:1;
}
</style>
js脚本
$(function(){
$("#spacetr").css("height",$("#thead").css("height"));
//将空白行的高度设置为和表头等高,使被遮挡的数据刚好下移表头高度的距离
});
jsp代码
<div style="width:100%">
<%--<img src="${pageContext.request.contextPath}/images/post_head.jpg"/> --%>
<table id="table" border="1px gray solid " cellspacing="0" cellpadding="0" width="100%;" >
<tr id="thead">
<td width="9%" align="center">招聘学科</td>
<c:forEach items="${postnames}" var="postname">
<td valign="bottom" align="center">
${postname}
</td>
</c:forEach>
</tr>
<tr id="spacetr">
<td width="9%"></td>
<c:forEach items="${postnames}" var="postname">
<td>
</td>
</c:forEach>
</tr>
<c:forEach items="${shcoolsPostnumbers}" var="schoolPostnumbers">
<tr class="tdata">
<td width="9%" >${schoolPostnumbers.key}</td>
<c:forEach items="${schoolPostnumbers.value}" var="postnumber">
<td align="center"> ${postnumber} </td>
</c:forEach>
</tr>
</c:forEach>
</table>
</div>
解决办法示例如下。其中,单元格上下对齐的问题可以通过设置padding margin 百分比width来解决,表头和表体也可以放在各自的div里。
样式单
复制代码
代码如下:<style type="text/css">
{
padding:0px;
margin: 0px;
}
#thead {
/固定表头/
position:fixed;
/ 表头显示层次高于表体,防止空白行和表头重合时出现重影/
z-index:2;
background:#ECECFF;
}
#spacetr{ / 空白的tr 用来填补表头遮盖的数据/
position:relative;
z-index:1;
}
.tdata { / 显示表格数据的tr /
position:relative;
z-index:1;
}
</style>
js脚本
复制代码
代码如下:$(function(){
$("#spacetr").css("height",$("#thead").css("height"));
//将空白行的高度设置为和表头等高,使被遮挡的数据刚好下移表头高度的距离
});
jsp代码
复制代码
代码如下:<div style="width:100%">
<%--<img src="${pageContext.request.contextPath}/images/post_head.jpg"/> --%>
<table id="table" border="1px gray solid " cellspacing="0" cellpadding="0" width="100%;" >
<tr id="thead">
<td width="9%" align="center">招聘学科</td>
<c:forEach items="${postnames}" var="postname">
<td valign="bottom" align="center">
${postname}
</td>
</c:forEach>
</tr>
<tr id="spacetr">
<td width="9%"></td>
<c:forEach items="${postnames}" var="postname">
<td>
</td>
</c:forEach>
</tr>
<c:forEach items="${shcoolsPostnumbers}" var="schoolPostnumbers">
<tr class="tdata">
<td width="9%" >${schoolPostnumbers.key}</td>
<c:forEach items="${schoolPostnumbers.value}" var="postnumber">
<td align="center"> ${postnumber} </td>
</c:forEach>
</tr>
</c:forEach>
</table>
</div>
长沙网站设计
- 如何进行东阳SEO关键词优化?
- 边坝哪有关键词排名优化:提升你的网站流量与
- 安国百度优化服务:提升您的在线可见性
- 阜康新手做SEO怎么做
- 山西seo网站排名关键词优化:提升您网站曝光率
- 临沂seo网站排名关键词优化:提高你的网站可见
- 广西SEO网站推广怎样付费比较合理
- 双辽SEO网站推广:提升你的网站可见性与流量
- 辽宁企业网站优化购买方式有哪些
- 提升宝清百度SEO排名的实用技巧与策略
- 静宁百度SEO排名:提升您网站曝光率的关键策略
- 彭州百度SEO排名的提升策略和实施指南
- 广南百度关键词SEO:提升网站排名的关键策略
- 辽宁关键词优化怎么做论坛营销
- 吉林百度seo排名如何做到让用户满意
- 内黄百度优化服务:提升在线可见性的关键