利用css3 translate完美實(shí)現(xiàn)表頭固定效果
發(fā)布時間:2017-02-28 15:07:26 作者:zhangqh
我要評論
這篇文章主要介紹了利用css3 translate完美實(shí)現(xiàn)表頭固定效果的相關(guān)資料,文中通過示例代碼介紹的很詳細(xì),相信對大家具有一定的參考價值,需要的朋友們下面來一起看看吧。
前言
前段時間在工作中正好需要這個功能,但是找了很多都不能完美的實(shí)現(xiàn),所以在此就自己做了一個固定表頭的方法,主要用到了css3中的translate和一小段js代碼,下面來一起看看吧。
效果如下:

感覺是不是很和諧,而且代碼也少,不足的是IE9以下不支持translate屬性,但現(xiàn)在也沒多少要考濾IE9以下的兼容了吧,做前端老兼顧低版本的瀏覽器難免會讓自己束手束腳。。。。
下面來看下代碼吧
HTML
<div class="box">
<table>
<thead>
<tr>
<th>1</th>
<th>2</th>
<th>3</th>
<th>4</th>
<th>5</th>
<th>6</th>
<th>7</th>
<th>8</th>
<th>9</th>
<th>10</th>
<th>11</th>
<th>12</th>
<th>13</th>
<th>14</th>
<th>15</th>
</tr>
</thead>
<tbody>
<script>
var tr = '';
for(var i=0; i<15; i++) {
tr += '<tr>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
<td>'+i+'</td>\
</tr>';
}
document.write(tr);
</script>
</tbody>
</table>
</div>
CSS樣式
<style>
*{ margin: 0; padding: 0; list-style: none;}
.box {
width: 300px;
height: 300px;
margin: 50px auto 0;
overflow: auto;
}
.box table{
width: 100%;
border-collapse: collapse;
border-right: 1px solid #ccc;
border-top: 1px solid #ccc;
text-align: center;
}
.box table thead {
background-color: #ccc;
}
.box table th,
.box table td {
padding: 8px 10px;
border-left: 1px solid #ccc;
border-bottom: 1px solid #ccc;
white-space: nowrap;
}
</style>
JS腳本
<script>
window.onload = function() {
var $ = document.querySelector.bind(document);
var boxEle = $('.box');
boxEle.addEventListener('scroll', function(e) {
this.querySelector('thead').style.transform = 'translate(0, '+this.scrollTop+'px)';
});
}
</script>
總結(jié)
好了,以上就是這篇文章的全部內(nèi)容了,代碼是不是真的很少呢,還在等什么?快點(diǎn)感受一下吧。希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流。
相關(guān)文章
淺析CSS3 中的 transition,transform,translate之間區(qū)別和作用
這篇文章主要介紹了CSS3 中的 transition,transform,translate之間區(qū)別和作用,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價值,需要的朋友參考下2020-03-26css3 中translate和transition的使用方法
這篇文章主要介紹了css3 中translate和transition的使用方法,本文通過實(shí)例代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2020-03-26
CSS3 translate導(dǎo)致字體模糊的實(shí)例代碼
這篇文章主要介紹了CSS3 translate導(dǎo)致字體模糊的實(shí)例代碼,非常不錯,具有一定的參考借鑒價值,需要的朋友參考下吧2019-08-30- 這篇文章主要為大家詳細(xì)介紹了CSS3 3D 位移translate效果實(shí)例,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-05-03

CSS3實(shí)現(xiàn)水平居中、垂直居中、水平垂直居中的實(shí)例代碼
在前端面試中經(jīng)常會遇到css居中效果的實(shí)現(xiàn),今天小編給大家分享幾種css垂直水平居中的方法,通過實(shí)例代碼給大家講解,需要的朋友參考下吧2020-02-27- 這篇文章主要介紹了css常用元素水平垂直居中方案,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)2019-08-09
- 這篇文章主要介紹了CSS水平垂直居中解決方案(6種)的相關(guān)資料,小編覺得挺不錯的,現(xiàn)在分享給大家,也給大家做個參考。一起跟隨小編過來看看吧2018-02-10
css實(shí)現(xiàn)元素水平垂直居中常見的兩種方式實(shí)例詳解
這篇文章主要給大家介紹了css實(shí)現(xiàn)元素水平垂直居中的兩種方式,文中給出了完整的示例代碼供大家參考學(xué)習(xí),對大家的學(xué)習(xí)或者工作具有一定的參考價值,有需要的朋友們下面來2017-04-23- 這篇文章主要介紹了CSS水平垂直居中的幾種方法總結(jié),垂直居中是布局中十分常見的效果之一,本文介紹了幾種方法,有興趣的可以了解一下。2016-12-19
- 這篇文章主要為大家詳細(xì)介紹了css讓容器水平垂直居中的7種方式,具有一定的參考價值,感興趣的小伙伴們可以參考一下2016-10-17



