已解决
滚动条不占位置
来自网友在路上 183883提问 提问时间:2023-11-07 19:28:55阅读次数: 83
最佳答案 问答题库838位专家为你答疑解惑
以Vue + Element Dialog为例,用ResizeObserver
监听容器高度变化,当高度大于最大高度(出现滚动条),右边距减去滚动条的宽度,反之恢复正常边距
<el-dialog><div class="dialog_body" v-fix-scroll-bar="this"><slot /></div>
</el-dialog>
export default {data() {return {resizeObserver: null,}},methods: {setScrollBar() {this.resizeObserver = new ResizeObserver((entries) => {for (let entry of entries) {const cr = entry.contentRect;const el_dialog_body = entry.target.parentNode;const maxHeight = window.getComputedStyle(el_dialog_body).maxHeight;if (maxHeight && cr.height > parseInt(maxHeight)) {el_dialog_body.style.paddingRight = "20px";} else {el_dialog_body.style.paddingRight = "32px";}}});},},mounted() {this.setScrollBar();},directives: {fixScrollBar: {inserted: (el, binding) => {const _this = binding.value;_this.resizeObserver.observe(el);},unbind: (el, binding) => {const _this = binding.value;_this.resizeObserver.unobserve(el);},},},
}
查看全文
99%的人还看了
相似问题
- 数据结构:AVL树的旋转(高度平衡树)
- 11.3递归建二叉树,二叉树函数规范化输入输出,一些二叉树性质,求叶子结点与树的高度
- vue的message提示信息修改提示框所在页面位置高度
- Cesium:CGCS2000坐标系的xyz坐标转换成WGS84坐标系的经纬高度,再转换到笛卡尔坐标系的xyz坐标
- 晶圆表面形貌及台阶高度测量,您知道多少?
- 深入理解元素的高度、行高、行盒和vertical-align
- 实现每栏中间穿插一个低于外部盒子高度的分割线
- 左移测试,如何确保安全合规还能实现高度自动化?
- qt-C++笔记之在两个标签页中按行读取两个不同的文件并且滚动条自适应滚动范围高度
- el-table添加固定高度height后高度自适应
猜你感兴趣
版权申明
本文"滚动条不占位置":http://eshow365.cn/6-34687-0.html 内容来自互联网,请自行判断内容的正确性。如有侵权请联系我们,立即删除!
- 上一篇: 什么是Kubernetes RBAC?为什么需要它?
- 下一篇: 1.UML面向对象类图和关系