整合营销服务商

电脑端+手机端+微信端=数据同步管理

免费咨询热线:

Web前端开发-搞定产品之CSS实现的Table表头固定

、遇问题:

产品说:“这张表我想在手机端显示。”

我:“显示不了,手机屏幕太窄了,好多数据无法显示。”

一个小时后......

产品说:“要不你弄个滑动吧,我左右滑动查看”

我:“好的”(竟然被你想到了!!!)

N个小时后.....

产品说:“我向下滑动看不到标题了”

我:“那我在把标题固定住。。。。”

一张列表中需要展示多行多列数据,页面太小,又要支持手机端。

二、解决思路:

1.CSS中有overflow属性可以对溢出元素进行隐藏

2.构建4个table,图中1.“公司/日期”2.时间 3.公司 4.数据内容

3.通过监听右边滚动条滑动距离控制第3个table

3.通过监听下边滚动条滑动距离控制第2个tablesasasasa

三、伪代码

<div style="">
 <div id="div1">
 <table >
 
 </table>
 </div>
 <div id="div2">
 <table style="width:12900px;">
 
 </table>
 </div>
 <div id="div3">
 <table>
 
 </table>
 </div>
 <div id="div4">
 <table id="table1" style="width:12900px;">
 
 </table>
 </div>
</div>
<script>
 $('#table1').parent("div").each(function () {
 $(this).data({sl: this.scrollLeft, st: this.scrollTop});
 }).scroll(function () {
 var sl = this.scrollLeft, st = this.scrollTop;
 $("#div2").scrollLeft(sl);
 $("#div3").scrollTop(st);
 });
</script>

四、解析

这种适用于简单表格固定表头首列,滚动条高度是17px,当我们设置表格宽度和高度时候要注意这个高度,不然会错位。

演示地址:

[演示地址](http://47.105.36.188:3030/toutiao/CSS实现的Table表头固定/index.html)

[源代码下载](https://github.com/harryluo163/toutiao/tree/master/CSS实现的Table表头固定)

TML 表格


HTML 表格实例:




HTML 表格

表格由 <table> 标签来定义。每个表格均有若干行(由 <tr> 标签定义),每行被分割为若干单元格(由 <td> 标签定义)。字母 td 指表格数据(table data),即数据单元格的内容。数据单元格可以包含文本、图片、列表、段落、表单、水平线、表格等等。


表格实例

实例

<table border="1">

<tr>

<td>row 1, cell 1</td>

<td>row 1, cell 2</td>

</tr>

<tr>

<td>row 2, cell 1</td>

<td>row 2, cell 2</td>

</tr>

</table>

在浏览器显示如下::



HTML 表格和边框属性

如果不定义边框属性,表格将不显示边框。有时这很有用,但是大多数时候,我们希望显示边框。

使用边框属性来显示一个带有边框的表格:

实例

<table border="1">

<tr>

<td>Row 1, cell 1</td>

<td>Row 1, cell 2</td>

</tr>

</table>


HTML 表格表头

表格的表头使用 <th> 标签进行定义。

大多数浏览器会把表头显示为粗体居中的文本:

实例

<table border="1">

<tr>

<th>Header 1</th>

<th>Header 2</th>

</tr>

<tr>

<td>row 1, cell 1</td>

<td>row 1, cell 2</td>

</tr>

<tr>

<td>row 2, cell 1</td>

<td>row 2, cell 2</td>

</tr>

</table>

在浏览器显示如下:

HTML 表格标签

加表格头部信息与脚部信息

昨天我们在《使用HTML添加表格1(基本元素)——零基础自学网页制作》(文章结尾有目录)中学习了如何向网页中添加基础表格,今天我们来学习如何为基础表格添加表头和表脚信息。先看看效果吧。

老规矩,先介绍表头和表脚的标签。

表头:<thead></thead>

这个标签只是告诉页面这里是表头,如果添加文字的话还需要<tr></tr>列标签和<td></td>行标签。

如果要添加表头的话,直接在代码中添加这个标签是不行的,我们还需要将其他表格内容放置到<tbody></tbody>中,这样html才能知道哪里是表格内容,哪里是表头内容。

示例代码如下所示:

<table border = "1" width = "100%">
  <thead><!--表头开始标签-->
  <tr>
  <td>表格的头部信息</td>
</tr>
</thead><!--表头结束标签--><tbody><!--表格内容开始标签-->
<caption>表格标题</caption>
<tr>
  <th>姓名</th>
<th>年龄</th>
</tr>
<tr>
  <td>一列一行</td>
<td>一列二行</td>
</tr>
<tr>
  <td>二列一行</td>
<td>二列二行</td>
</tr>
</tbody><!--表格内容结束标签-->
</table>

代码效果如图:

大家通过观察发现,表格的标题标签<caption></caption>虽然写在<tbody></tbody>里面,但是显示的时候,却一直在表格的最上面。

合并单元格操作:我们希望表头信息能够在表格中独占一列,这样就需要介绍如何修改<td></td>行标签中的colspan属性。

示例代码如下:

<thead>
  <!--表头开始标签--><tr><td colspan = "2">表格的头部信息</td></tr></thead><!--表头结束标签-->

修改后效果如下:

colspan的意思就是"列合并",col是column(列、纵队)的缩写,span是跨度的意思。

colspan就是为<td></td>列标签指定跨越几个列向单元格。

这里我们要合并两个,故colspan="2",2一定要用半角引号引起来!

那合并行单元格的属性是什么呢?其实反推一下也能猜出。行的英文是row,因此rowspan就是"行合并"。

代码示例如下:我们把"一行一列"和"二行一列"纵向合并。

<tr>
  <td rowspan = "2">一列一行</td>
<td>一列二行</td>
</tr>
<tr>
<td>二列二行</td>
</tr>

效果如图所示:

大家注意,如果您合并成了"一行一列",那就要把"二列一行"删掉。

最后,我们来写一下表格的脚部信息。

脚部标签如下:<tfoot></tfoot>

使用方法和<thead></thead>一样,在中间添加列行标签来显示内容。

同时也要给<td></td>行标签进行列向合并单元格,即添加colspan="2"。

示例代码如下:

<tfoot><tr><td colspan = "2">表格的脚部信息</td></tr></tfoot>

值得注意的是:这块代码的位置在<thead></thead>之后,<tbody></tbody>之前。

示例代码如下:

<table border = "1" width = "100%">
  <thead>
  <tr>
  <td colspan = "2">表格的头部信息</td>
</tr>
</thead>
<tfoot>
    <tr>
    <td colspan = "2">表格的脚部信息</td>
</tr>
</tfoot>
<tbody>
<caption>表格标题</caption>
<tr>
<th>姓名</th>
<th>年龄</th>
</tr>
<tr>
<td rowspan = "2">一列一行</td>
<td>一列二行</td>
</tr>
<tr>
<td>二列二行</td>
</tr>
</tbody>
</table>

页面效果如下:

今天的内容结束了。明天我们继续讲解列表元素的其他属性。

喜欢的小伙伴请关注我,阅读中遇到任何问题请给我留言,如有疏漏或错误欢迎大家斧正,不胜感激!

HTML完整学习目录

HTML序章(学习目的、对象、基本概念)——零基础自学网页制作

HTML是什么?——零基础自学网页制作

第一个HTML页面如何写?——零基础自学网页制作

HTML页面中head标签有啥用?——零基础自学网页制作

初识meta标签与SEO——零基础自学网页制作

HTML中的元素使用方法1——零基础自学网页制作

HTML中的元素使用方法2——零基础自学网页制作

HTML元素中的属性1——零基础自学网页制作

HTML元素中的属性2(路径详解)——零基础自学网页制作

使用HTML添加表格1(基本元素)——零基础自学网页制作

使用HTML添加表格2(表格头部与脚部)——零基础自学网页制作

使用HTML添加表格3(间距与颜色)——零基础自学网页制作

使用HTML添加表格4(行颜色与表格嵌套)——零基础自学网页制作

16进制颜色表示与RGB色彩模型——零基础自学网页制作

HTML中的块级元素与内联元素——零基础自学网页制作

初识HTML中的<div>块元素——零基础自学网页制作

在HTML页面中嵌入其他页面的方法——零基础自学网页制作

封闭在家学网页制作!为页面嵌入PDF文件——零基础自学网页制作

HTML表单元素初识1——零基础自学网页制作

HTML表单元素初识2——零基础自学网页制作

HTML表单3(下拉列表、多行文字输入)——零基础自学网页制作

HTML表单4(form的action、method属性)——零基础自学网页制作

HTML列表制作讲解——零基础自学网页制作

为HTML页面添加视频、音频的方法——零基础自学网页制作

音视频格式转换神器与html视频元素加字幕——零基础自学网页制作

HTML中使用<a>标签实现文本内链接——零基础自学网页制作