最近一个项目需要用到表格,为了图省事直接用的ElementUI组件。使用默认的参数在表格所在的容器大小变化时会发生错位问题,如下图所示。
网上的一些方法基本都试过了,没啥作用(可能是方式不对)...最后查询ElementUI文档,在el-table里面添加属性table-layout='auto',完美解决。不设置该属性默认为table-layout='fixed'
定义和用法
tableLayout 属性用来显示表格单元格、行、列的算法规则。
table-layout在最新的文档中有两个属性值:auto、fixed。
fixed:固定表格布局
固定表格布局与自动表格布局相比,允许浏览器更快地对表格进行布局。
在固定表格布局中,水平布局仅取决于表格宽度、列宽度、表格边框宽度、单元格间距,而与单元格的内容无关。
通过使用固定表格布局,用户代理在接收到第一行后就可以显示表格。
如果指定了单元格的宽度,则会按指定的宽度限定每个单元格宽度,跟内容无关(如果指定的是比例,会永远保持这个比例),这样就可能出现内容飘到单元格之外的情况。
如果没有指定单元格的宽度,则会根据table的总宽度平分到每个单元格。
auto:自动表格布局
在自动表格布局中,列的宽度是由列单元格中没有折行的最宽的内容设定的。
此算法有时会较慢,这是由于它需要在确定最终的布局之前访问表格中所有的内容。
自动表格布局时,设置单元格的宽度是没有效的