table 上下左右 4根线的写法 :before :after 他们就能把td里面右下的那颗线给盖上 还有body和header横向滚动的联动 || 不能把body套在header上是为了上header表头固定 || 还有表头header的右侧overflow-y 是否出现滚动条的位置 记得有一个$nextTick 要不然会获取不到高度 高度就为0了 || 横向滚动条纵向滚动条
table 上下左右 4根线的写法
<!--
* @description 重点查核人员表
!-->
<template>
<div class="keyCheckersTable">
<div class="tableZenHeader" ref="tableZenHeader">
<tableZen ref="tableZen"
disInnerInit
width="1500"
:styles="{border:0}"
:columns="columns"
@reload="tableZenReloadHandle">
</tableZen>
</div> <div :style="{height:innerHeight+'px' }" class="tableZenBody" ref="tableZenBody" @scroll="scrollHandle">
<div style="height: 500px; width: 1500px;">
123
</div>
</div>
</div>
</template> <script>
import columns from './columns'
import mockJson from './mockJson'
import buttonZen from '@/components/buttonZen'
import tableZen from '@/components/tableZen/tableZen' // 表格组件
import privateZenMixins from '@/view/biz/input/components/privateZenMixins.js'
export default {
name: 'keyCheckersTable',
mixins: [privateZenMixins],
components: {
tableZen,
buttonZen
},
props: {
diffHeight: {
type: Number,
default: 315
}
},
data () {
return {
innerHeight: 0,
mockJson,
columns
}
},
watch: {},
computed: {},
methods: {
hasScrollbar () {
this.consoleInfo('hasScrollbar', this.$refs.tableZenBody.scrollHeight, this.$refs.tableZenBody.offsetHeight)
// return this.$refs.tableZenBody.scrollWidth > this.$refs.tableZenBody.offsetWidth
return this.$refs.tableZenBody.scrollHeight > this.$refs.tableZenBody.offsetHeight
},
setScrollbar () {
this.$nextTick(() => {
this.setScrollbarExecute()
})
},
setScrollbarExecute () {
this.consoleInfo('this.hasScrollbar()', this.hasScrollbar())
if (this.hasScrollbar()) { // 如果有横向滚动条
this.$refs.tableZenHeader.style['overflow-y'] = 'scroll'
} else {
this.$refs.tableZenHeader.style['overflow-y'] = 'hidden'
}
},
scrollHandle () {
// this.consoleInfo('scrollHandle scrollLeft', this.$refs.tableZenBody.scrollLeft)
this.$refs.tableZenHeader.scrollLeft = this.$refs.tableZenBody.scrollLeft
},
init () {
this.calcHeight()
this.setScrollbar() window.addEventListener('resize', () => {
this.consoleInfo('resize')
this.calcHeight()
this.setScrollbar()
})
},
calcHeight () {
this.innerHeight = window.innerHeight - this.diffHeight
// this.consoleInfo('height', window.innerHeight, this.diffHeight, this.innerHeight)
},
tableZenReloadHandle (anyParams, callback) {
let ret = {
total: 100,
data: [{ a1: 'test' }]
}
callback(ret)
}
},
created () {},
mounted () {
this.init()
}
}
</script>
<style lang="less">
.keyCheckersTable { border-top: 1px solid #dcdee2;
border-left: 1px solid #dcdee2;
position: relative;
&:before {
content: '';
width: 100%;
height: 1px;
position: absolute;
left: 0;
bottom: 0;
background-color: #dcdee2;
z-index: 1;
}
&:after {
content: '';
width: 1px;
height: 100%;
position: absolute;
top: 0;
right: 0;
background-color: #dcdee2;
z-index: 3;
}
.tableZenHeader {
overflow-x: hidden;
/*overflow-y: scroll;*/
}
.ivu-table-tip { display: none;}
.tableZenBody {
overflow: auto;
}
.ivu-table { margin-bottom: 0 !important;}
}
</style>
table 上下左右 4根线的写法 :before :after 他们就能把td里面右下的那颗线给盖上 还有body和header横向滚动的联动 || 不能把body套在header上是为了上header表头固定 || 还有表头header的右侧overflow-y 是否出现滚动条的位置 记得有一个$nextTick 要不然会获取不到高度 高度就为0了 || 横向滚动条纵向滚动条的更多相关文章
- AntV F2 数据可视化填坑,图表横向滚动
柱状图横向滚动 思路 通过 Interaction 实现平移,通过 ScrollBar 显示滚动条 1.Interaction F2 提供一套交互机制,以达到通用交互行为的封装和复用.基于此机制,我们 ...
- 使 WPF 支持触摸板的横向滚动
微软终于开始学苹果一样好好做触摸板了(就是键盘空格键下面那一大块).然而鉴于以前没有好好做,以至于 WPF 程序甚至都没有对触摸板的横向滚动提供支持(竖向滚动是直接使用了 MouseWheel,汗-- ...
- 获取UILabel上最后一个字符串的位置。获取文字长度和高度,自动换行
//行的高度. -(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPat ...
- Swift4 - 动态计算UITableView中tableHeaderView的高度 - 获取子控件高度和宽度
核心 : /// 获取 子控件高度 func sizeHeaderToFit(view:UIView) { view.setNeedsLayout() view.layoutIfNeeded() le ...
- jquery获取和设置元素高度宽度
jquery获取和设置元素高度宽度 1.height()/ width() 取得第一个匹配元素当前计算的高度/宽度值(px) height(val)/ width(val) 为每个匹配的元素设置CSS ...
- 原生JS获取各种高度宽度、浏览器窗口滚动条的位置、元素的几何尺寸名
1)关于 pageX, clienX,offsetX,layerX pageX:鼠标在页面上的位置,从页面左上角开始,即是以页面为参考点,不随滑动条移动而变化 clientX:鼠标在页面上可视区域的位 ...
- js获取网页的各种高度
原文:js获取网页的各种高度 网页可见区域宽: document.body.clientWidth网页可见区域高: document.body.clientHeight网页可见区域宽: documen ...
- 纯css实现table表格固定列和表头,中间横向滚动的思路-附案例
最近做的后台管理系统要处理大量的表格 原项目是采用的for循环加拼接字符串的方式实现;导致js代码一大堆;各种单引号和双引号的嵌套;让人头疼;遂引入vue.js;用v-for做模板渲染;工作量顿时减轻 ...
- Android获取虚拟软键盘高度
public static int getDpi(Context context) { int dpi = 0; WindowManager windowManager = (WindowManage ...
随机推荐
- win10安装3DSMAX失败,怎么强力卸载删除注册表并重新安装
一些搞设计的朋友在win10系统下安装3DSMAX失败或提示已安装,也有时候想重新安装3DSMAX的时候会出现本电脑windows系统已安装3DSMAX,你要是不留意直接安装3DSMAX,只会安装3D ...
- tftpd64-SE使用
使用场景: 把windows下的文件写入到linux(嵌入式设备中): 下载地址: https://bitbucket.org/phjounin/tftpd64/wiki/Download%20Tft ...
- com.mysql.jdbc.exceptions.jdbc4.MySQLDataException: '2.34435678977654336E17' in column '3' is outside valid range for the datatype INTEGER.
### Error querying database. Cause: java.lang.reflect.UndeclaredThrowableException### The error may ...
- 解决跨域问题(CORS)
一.改变响应头部 请求代码如下: fetch("http://localhost:8888/young",{ method:"get" }).then(func ...
- 关于安装了Vue-devtools插件但在浏览器控制台不显示的解决方案
Google浏览器中开发调试的时候,右上角出现vue的图标,但是在开发者工具中没有出现vue调试(已在扩展程序中安装 Vue Devtools) 控制台却没有. 错误原因: 没显示调试工具的原因是用了 ...
- struts2和springmvc性能比较2
我们用struts2时采用的传统的配置文件的方式,并没有使用传说中的0配置.spring3 mvc可以认为已经100%零配置了(除了配置spring mvc-servlet.xml外). Spring ...
- JXJJOI2018_三题
这次比赛的话其实还挺满意的,虽然T1 20pts(指的是分数,考试时知道有坑但是考完都没找到的我就知道切不掉这题qwq),T3爆零是在意料之外,不过其实T2贪心能切掉也是意料之外的,所以作此判断.当然 ...
- iOS 编程:NSURLSession
定义:描述 Foundation 框架类在标准的网络传输协议下,用 URLs 连接因特网并与服务器交互的一整套体系. 支持的传输协议: File Transfer Protocol (ftp://) ...
- 阿里凭啥比腾讯更会和Groupon相处好?
提起Groupon,大部分人对其第一反应就是那个"过气"的团购网鼻祖和与腾讯合作推出的国内团购网站"高朋网",死相极惨!虽然马化腾表示是双方准备不足的原因,但却 ...
- CSS——NO.10(设置技巧)
*/ * Copyright (c) 2016,烟台大学计算机与控制工程学院 * All rights reserved. * 文件名:text.cpp * 作者:常轩 * 微信公众号:Worldhe ...