Vue+element el-table 横向表格展示数据,表格错位 auto布局
时间: 2024-09-21 14:02:34 浏览: 47
在Vue.js中结合Element UI库创建横向滚动表格(el-table),你可以使用Element UI提供的`el-table-column`组件以及自适应列宽的属性`show-overflow-tooltip`和`min-width`来解决错位问题,并通过设置`width`属性为百分比配合`auto-fit`模式来实现自动布局。
首先,在模板中,你可以这样配置el-table:
```html
<template>
<div class="table-container">
<el-table :data="tableData" style="width: 100%">
<el-table-column
prop="name"
label="Name"
width="20%"
show-overflow-tooltip
min-width="80px"
></el-table-column>
<!-- 添加其他列 -->
<el-table-column
prop="otherColumn"
label="Other Column"
width="20%" <!-- 可调整列宽 -->
:show-overflow-tooltip="true"
min-width="80px"
></el-table-column>
<!-- ... -->
<el-table-column type="expand" label="Expand"></el-table-column>
</el-table>
</div>
</template>
<script>
export default {
data() {
return {
tableData: [
{ name: 'Item 1', otherColumn: 'Data for Item 1' },
// 更多数据...
]
};
}
};
</script>
<style scoped>
.table-container {
overflow-x: auto; /* 设置水平滚动 */
}
</style>
```
这里,`width`属性设置了列的初始宽度,`min-width`保证了最小显示宽度,而`show-overflow-tooltip`可以让超出内容有提示。同时,给包含表格的容器添加`overflow-x: auto`可以使其在内容过多时显示水平滚动条。
如果需要自动调整列宽,你可以将`width`属性设为百分比(如上例中的`20%`),然后启用`el-table`的`auto-fit`属性:
```html
<el-table :data="tableData" :auto-fit="true" style="width: 100%">
```
这会使得列宽按照内容填充表格空间。
阅读全文