当前位置:首页 > VUE

vue实现纵向表格

2026-02-20 14:39:19VUE

实现纵向表格的基本思路

纵向表格即表头在左侧、数据向右展开的布局,可通过调整HTML结构和CSS样式实现。Vue中结合动态数据绑定可高效完成此类需求。

基础HTML结构

使用<table>标签构建,通过v-for循环生成行列。关键是将表头作为第一列而非第一行:

<table class="vertical-table">
  <tr v-for="(row, index) in tableData" :key="index">
    <th>{{ row.header }}</th>
    <td v-for="(cell, cellIndex) in row.data" :key="cellIndex">
      {{ cell }}
    </td>
  </tr>
</table>

Vue数据示例

数据格式应为对象数组,每个对象包含表头字段和数据数组:

vue实现纵向表格

data() {
  return {
    tableData: [
      { header: '姓名', data: ['张三', '李四', '王五'] },
      { header: '年龄', data: [25, 30, 28] },
      { header: '职业', data: ['工程师', '设计师', '产品经理'] }
    ]
  }
}

关键CSS样式

通过CSS控制表格方向,注意边框和对齐方式:

.vertical-table {
  border-collapse: collapse;
  width: auto;
}
.vertical-table th {
  background-color: #f5f5f5;
  text-align: right;
  padding: 8px 12px;
  border: 1px solid #ddd;
}
.vertical-table td {
  padding: 8px 12px;
  border: 1px solid #ddd;
}

动态列扩展方案

当需要动态增加列时,可通过方法更新数据:

vue实现纵向表格

methods: {
  addColumn() {
    this.tableData.forEach(row => {
      row.data.push('新数据');
    });
  }
}

响应式适配

结合媒体查询实现移动端适配:

@media (max-width: 768px) {
  .vertical-table {
    display: block;
  }
  .vertical-table tr {
    display: flex;
    flex-direction: column;
  }
}

使用组件化封装

对于复杂场景,可封装为可复用组件:

<template>
  <div>
    <slot name="header"></slot>
    <table class="vertical-table">
      <!-- 表格内容 -->
    </table>
  </div>
</template>

<script>
export default {
  props: ['rows'],
  // 组件逻辑
}
</script>

标签: 纵向表格
分享给朋友:

相关文章

vue实现表格追加

vue实现表格追加

实现表格数据追加的方法 在Vue中实现表格数据追加可以通过多种方式完成,主要涉及数据绑定和数组操作。以下是几种常见的方法: 数据绑定与v-for指令 通过v-for指令渲染表格数据,利用数组的co…

vue实现表格内容

vue实现表格内容

Vue实现表格内容的方法 使用原生HTML表格 在Vue模板中直接使用HTML的<table>标签构建表格结构,通过v-for指令动态渲染数据。 <template> &…

vue实现表格筛选

vue实现表格筛选

实现表格筛选的基本思路 在Vue中实现表格筛选通常涉及以下几个核心步骤:数据绑定、筛选逻辑处理、动态渲染。以下是具体实现方法。 基础数据绑定与表格渲染 定义表格数据和表头结构,使用v-for循环渲染…

vue实现表格透明

vue实现表格透明

实现表格透明的方法 在Vue中实现表格透明效果,可以通过CSS样式调整表格的背景透明度。以下是几种常见的方法: 设置表格背景透明度 通过CSS的background-color属性配合rgba()…

vue实现表格刷新

vue实现表格刷新

Vue 实现表格刷新的方法 使用 v-if 强制重新渲染 通过 v-if 控制表格的显示与隐藏,切换时 Vue 会重新渲染组件。 <template> <button @cli…

vue实现表格滚动

vue实现表格滚动

Vue 实现表格滚动的方法 使用 CSS 固定表头并滚动内容 通过 CSS 设置表格容器的固定高度和 overflow-y: auto,实现内容区域的滚动。表头部分使用 position: stick…