vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同)


Posted in Javascript onAugust 17, 2019
mounted() {

 // 在mounted中监听表格scroll事件
    this.$refs.scrollTable.addEventListener( 'scroll',(event) => {
      this.adjustTable(event);
    });
  },
......
// target中的属性很多,可以通过控制台查看—-clientWidth可以获取除滚动条外的可视区域宽度
adjustTable(event) {
      this.clientWidth = event.target.clientWidth;
    },

获取clientWidth,可以调整表头与列对齐(最后一列的宽度不设置)

<table class="cl-body-table" cellpadding="0" cellspacing="0">
    <thead :style="{'width':clientWidth+'px'}">
      <th style="width:8%"></th>
      <th class="cl-thead-th"></th>
    </thead>
    <tbody></tbody>
</table>
.......
// 表格滚动
table tbody {


display: block;


height: 495px;


overflow-y: auto;


overflow-x: hidden;

}
// 表头固定

table thead,

tbody tr {


display: table;


table-layout: fixed; /* 使用表格固定算法 必须配合上面一起使用 */


width: 100%;

}
//列宽度
.cl-thead-th {
    &.is-not-last {
      width:13.142857143% // 最后一列不设宽度,才能表头与列对齐
    }
  }

网上最简单的表头与列对齐,由于我第一列的宽度与其他列宽度不同,导致始终不能对齐。因此我采用以下方法无效

// 表格滚动
table tbody {
  display: block;
  height: 495px;      
  overflow-y: auto;
  overflow-x: hidden;
}
// 表头固定
table thead,
tbody tr { 
  display: table;
  table-layout: fixed; /* 使用表格固定算法 必须配合上面一起使用 */
  width: 100%;
}
// 调整表头与列对齐
table thead {
  width:calc(100%-2em)
}

总结

以上所述是小编给大家介绍的vue中获取滚动table的可视页面宽度调整表头与列对齐(每列宽度不都相同),希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

Javascript 相关文章推荐
JavaScript Archive Network 集合
May 12 Javascript
jQuery 事件队列调整方法
Sep 18 Javascript
JS 文件本身编码转换 图文教程
Oct 12 Javascript
JQery 渐变图片导航效果代码 漂亮
Jan 01 Javascript
javascript 数字格式化输出的实现代码
Dec 10 Javascript
JS和函数式语言的三特性
Mar 05 Javascript
动态载入js提高网页打开速度的方法
Jul 04 Javascript
Jquery日期选择datepicker插件用法实例分析
Jun 08 Javascript
JavaScript处理解析JSON数据过程详解
Sep 11 Javascript
JavaScript快速切换繁体中文和简体中文的方法及网站支持简繁体切换的绝招
Mar 07 Javascript
vue3.0 CLI - 2.4 - 新组件 Forms.vue 中学习表单
Sep 14 Javascript
Vue CLI 3搭建vue+vuex最全分析(推荐)
Sep 27 Javascript
vue 使用element-ui中的Notification自定义按钮并实现关闭功能及如何处理多个通知
Aug 17 #Javascript
微信小程序开发之map地图组件定位并手动修改位置偏差
Aug 17 #Javascript
微信小程序移动拖拽视图-movable-view实例详解
Aug 17 #Javascript
微信小程序框架的页面布局代码
Aug 17 #Javascript
vue实现滑动到底部加载更多效果
Oct 27 #Javascript
vue实现页面滚动到底部刷新
Aug 16 #Javascript
vue-mugen-scroll组件实现pc端滚动刷新
Aug 16 #Javascript
You might like
php下实现一个阿拉伯数字转中文数字的函数
2008/07/10 PHP
php笔记之:php函数range() round()和list()的使用说明
2013/04/26 PHP
PHP提示Warning:phpinfo() has been disabled函数禁用的解决方法
2014/12/17 PHP
PHP实现恶意DDOS攻击避免带宽占用问题方法
2015/05/27 PHP
实例讲解PHP表单验证功能
2019/02/15 PHP
jQuery 性能优化手册 推荐
2010/02/23 Javascript
原生javascript获取元素样式属性值的方法
2010/12/25 Javascript
javascript实现随机读取数组的方法
2015/08/03 Javascript
Omi v1.0.2发布正式支持传递javascript表达式
2017/03/21 Javascript
jquery easyui如何实现格式化列
2017/07/30 jQuery
JS实现前端缓存的方法
2017/09/21 Javascript
js实现鼠标单击Tab表单切换效果
2018/05/16 Javascript
超出JavaScript安全整数限制的数字计算BigInt详解
2018/06/24 Javascript
深入理解Vue router的部分高级用法
2018/08/15 Javascript
小程序组件传值和引入sass的方法(使用vant Weapp组件库)
2020/11/24 Javascript
[27:28]Ti4 冒泡赛第二天 iG vs NEWBEE 1
2014/07/15 DOTA
Python基于PycURL实现POST的方法
2015/07/25 Python
python中reduce()函数的使用方法示例
2017/09/29 Python
python数据抓取分析的示例代码(python + mongodb)
2017/12/25 Python
python 读文件,然后转化为矩阵的实例
2018/04/23 Python
python将一组数分成每3个一组的实例
2018/11/14 Python
Django框架之DRF 基于mixins来封装的视图详解
2019/07/23 Python
python根据多个文件名批量查找文件
2019/08/13 Python
python默认参数调用方法解析
2020/02/09 Python
Python基础之字符串常见操作经典实例详解
2020/02/26 Python
悦木之源美国官网:Origins美国
2016/08/01 全球购物
致标枪运动员广播稿
2014/02/06 职场文书
大学自我评价
2014/02/12 职场文书
技术负责人任命书
2014/06/05 职场文书
小学竞选班长演讲稿
2014/09/09 职场文书
2014旅游局领导班子四风问题对照检查材料思想汇报
2014/09/19 职场文书
2014教师年度思想工作总结
2014/11/10 职场文书
小学二年级数学教学计划
2015/01/20 职场文书
python文件目录操作之os模块
2021/05/08 Python
pytorch分类模型绘制混淆矩阵以及可视化详解
2022/04/07 Python
详解SQL的窗口函数
2022/04/21 Oracle