markup 表格
QMarkupTable 组件封装了原生的 <table>
,使其看起来像是 Material Design(质感设计)的组件。
TIP
对于分页、排序、过滤等高级功能,您可能需要查阅 QTable 组件。
QMarkupTable API
QMarkupTable API
props
7
slots
1
content
2
style
5
separator
: String
说明
在行、列或所有单元格之间使用分隔符/边框
wrap-cells
: Boolean
说明
在表格单元格中包裹文本
用法
WARNING
注意,QMarkupTable
的内容是由原生 HTML <table>
标签呈现的,使用一个 <thead>
和一个 <tbody>
来包裹标题和表主体。这是必需的。
UMD 开发者
该组件将不能在 Quasar 的 UMD 版本中按原样工作。 浏览器在 Vue 插入并渲染之前先解析 HTML 模板,因此标记必须正确。 不能是<q-markup-table> <thead>
或 <q-markup-table> <tbody>
。 解决方案是直接使用 QMarkupTable Vue 渲染的标签(<table class="....
)。
基础
Template
<template>
<div class="q-pa-md">
<q-markup-table>
<thead>
<tr>
<th class="text-left">Dessert (100g serving)</th>
<th class="text-right">Calories</th>
<th class="text-right">Fat (g)</th>
<th class="text-right">Carbs (g)</th>
<th class="text-right">Protein (g)</th>
<th class="text-right">Sodium (mg)</th>
</tr>
</thead>
<tbody>
<tr>
<td class="text-left">Frozen Yogurt</td>
<td class="text-right">159</td>
<td class="text-right">6</td>
<td class="text-right">24</td>
<td class="text-right">4</td>
<td class="text-right">87</td>
</tr>
<tr>
<td class="text-left">Ice cream sandwich</td>
<td class="text-right">237</td>
<td class="text-right">9</td>
<td class="text-right">37</td>
<td class="text-right">4.3</td>
<td class="text-right">129</td>
</tr>
<tr>
<td class="text-left">Eclair</td>
<td class="text-right">262</td>
<td class="text-right">16</td>
<td class="text-right">23</td>
<td class="text-right">6</td>
<td class="text-right">337</td>
</tr>
<tr>
<td class="text-left">Cupcake</td>
<td class="text-right">305</td>
<td class="text-right">3.7</td>
<td class="text-right">67</td>
<td class="text-right">4.3</td>
<td class="text-right">413</td>
</tr>
<tr>
<td class="text-left">Gingerbread</td>
<td class="text-right">356</td>
<td class="text-right">16</td>
<td class="text-right">49</td>
<td class="text-right">3.9</td>
<td class="text-right">327</td>
</tr>
</tbody>
</q-markup-table>
</div>
</template>
Copied to clipboard
Dessert (100g serving) | Calories | Fat (g) | Carbs (g) | Protein (g) | Sodium (mg) |
---|---|---|---|---|---|
Frozen Yogurt | 159 | 6 | 24 | 4 | 87 |
Ice cream sandwich | 237 | 9 | 37 | 4.3 | 129 |
Eclair | 262 | 16 | 23 | 6 | 337 |
Cupcake | 305 | 3.7 | 67 | 4.3 | 413 |
Gingerbread | 356 | 16 | 49 | 3.9 | 327 |
分割线
Template
Script
All
<template>
<div class="q-pa-md">
<q-option-group
v-model="separator"
inline
class="q-mb-md"
:options="separatorOptions"
/>
<q-markup-table :separator="separator" flat bordered>
<thead>
<tr>
<th class="text-left">Dessert (100g serving)</th>
<th class="text-right">Calories</th>
<th class="text-right">Fat (g)</th>
<th class="text-right">Carbs (g)</th>
<th class="text-right">Protein (g)</th>
<th class="text-right">Sodium (mg)</th>
</tr>
</thead>
<tbody>
<tr>
<td class="text-left">Frozen Yogurt</td>
<td class="text-right">159</td>
<td class="text-right">6</td>
<td class="text-right">24</td>
<td class="text-right">4</td>
<td class="text-right">87</td>
</tr>
<tr>
<td class="text-left">Ice cream sandwich</td>
<td class="text-right">237</td>
<td class="text-right">9</td>
<td class="text-right">37</td>
<td class="text-right">4.3</td>
<td class="text-right">129</td>
</tr>
<tr>
<td class="text-left">Eclair</td>
<td class="text-right">262</td>
<td class="text-right">16</td>
<td class="text-right">23</td>
<td class="text-right">6</td>
<td class="text-right">337</td>
</tr>
<tr>
<td class="text-left">Cupcake</td>
<td class="text-right">305</td>
<td class="text-right">3.7</td>
<td class="text-right">67</td>
<td class="text-right">4.3</td>
<td class="text-right">413</td>
</tr>
<tr>
<td class="text-left">Gingerbread</td>
<td class="text-right">356</td>
<td class="text-right">16</td>
<td class="text-right">49</td>
<td class="text-right">3.9</td>
<td class="text-right">327</td>
</tr>
</tbody>
</q-markup-table>
</div>
</template>
Copied to clipboard
Horizontal
Vertical
Cell
None
Dessert (100g serving) | Calories | Fat (g) | Carbs (g) | Protein (g) | Sodium (mg) |
---|---|---|---|---|---|
Frozen Yogurt | 159 | 6 | 24 | 4 | 87 |
Ice cream sandwich | 237 | 9 | 37 | 4.3 | 129 |
Eclair | 262 | 16 | 23 | 6 | 337 |
Cupcake | 305 | 3.7 | 67 | 4.3 | 413 |
Gingerbread | 356 | 16 | 49 | 3.9 | 327 |
黑色
Template
<template>
<div class="q-pa-md">
<q-markup-table dark class="bg-indigo-8">
<thead>
<tr>
<th class="text-left">Dessert (100g serving)</th>
<th class="text-right">Calories</th>
<th class="text-right">Fat (g)</th>
<th class="text-right">Carbs (g)</th>
<th class="text-right">Protein (g)</th>
<th class="text-right">Sodium (mg)</th>
</tr>
</thead>
<tbody>
<tr>
<td class="text-left">Frozen Yogurt</td>
<td class="text-right">159</td>
<td class="text-right">6</td>
<td class="text-right">24</td>
<td class="text-right">4</td>
<td class="text-right">87</td>
</tr>
<tr>
<td class="text-left">Ice cream sandwich</td>
<td class="text-right">237</td>
<td class="text-right">9</td>
<td class="text-right">37</td>
<td class="text-right">4.3</td>
<td class="text-right">129</td>
</tr>
<tr>
<td class="text-left">Eclair</td>
<td class="text-right">262</td>
<td class="text-right">16</td>
<td class="text-right">23</td>
<td class="text-right">6</td>
<td class="text-right">337</td>
</tr>
<tr>
<td class="text-left">Cupcake</td>
<td class="text-right">305</td>
<td class="text-right">3.7</td>
<td class="text-right">67</td>
<td class="text-right">4.3</td>
<td class="text-right">413</td>
</tr>
<tr>
<td class="text-left">Gingerbread</td>
<td class="text-right">356</td>
<td class="text-right">16</td>
<td class="text-right">49</td>
<td class="text-right">3.9</td>
<td class="text-right">327</td>
</tr>
</tbody>
</q-markup-table>
</div>
</template>
Copied to clipboard
Dessert (100g serving) | Calories | Fat (g) | Carbs (g) | Protein (g) | Sodium (mg) |
---|---|---|---|---|---|
Frozen Yogurt | 159 | 6 | 24 | 4 | 87 |
Ice cream sandwich | 237 | 9 | 37 | 4.3 | 129 |
Eclair | 262 | 16 | 23 | 6 | 337 |
Cupcake | 305 | 3.7 | 67 | 4.3 | 413 |
Gingerbread | 356 | 16 | 49 | 3.9 | 327 |
自定义
Template
<template>
<div class="q-pa-md">
<q-markup-table flat bordered>
<thead class="bg-teal">
<tr>
<th colspan="5">
<div class="row no-wrap items-center">
<q-img
style="width: 70px"
:ratio="1"
class="rounded-borders"
src="https://cdn.quasar.dev/img/donuts.png"
/>
<div class="text-h4 q-ml-md text-white">Treats</div>
</div>
</th>
</tr>
<tr>
<th class="text-left">Dessert (100g serving)</th>
<th class="text-right">Calories</th>
<th class="text-right">Fat (g)</th>
<th class="text-right">Carbs (g)</th>
<th class="text-right">Protein (g)</th>
</tr>
</thead>
<tbody class="bg-grey-3">
<tr>
<td class="text-left">Frozen Yogurt</td>
<td class="text-right">159</td>
<td class="text-right">6</td>
<td class="text-right">24</td>
<td class="text-right">4</td>
</tr>
<tr>
<td class="text-left">Ice cream sandwich</td>
<td class="text-right">237</td>
<td class="text-right">9</td>
<td class="text-right">37</td>
<td class="text-right">4.3</td>
</tr>
<tr>
<td class="text-left">Eclair</td>
<td class="text-right">262</td>
<td class="text-right">16</td>
<td class="text-right">23</td>
<td class="text-right">6</td>
</tr>
<tr>
<td class="text-left">Cupcake</td>
<td class="text-right">305</td>
<td class="text-right">3.7</td>
<td class="text-right">67</td>
<td class="text-right">4.3</td>
</tr>
<tr>
<td class="text-left">Gingerbread</td>
<td class="text-right">356</td>
<td class="text-right">16</td>
<td class="text-right">49</td>
<td class="text-right">3.9</td>
</tr>
</tbody>
</q-markup-table>
</div>
</template>
Copied to clipboard
![]() Treats | ||||
---|---|---|---|---|
Dessert (100g serving) | Calories | Fat (g) | Carbs (g) | Protein (g) |
Frozen Yogurt | 159 | 6 | 24 | 4 |
Ice cream sandwich | 237 | 9 | 37 | 4.3 |
Eclair | 262 | 16 | 23 | 6 |
Cupcake | 305 | 3.7 | 67 | 4.3 |
Gingerbread | 356 | 16 | 49 | 3.9 |
TIP
如果要删除某些行或单元格上的悬停效果,请向其添加 q-tr--no-hover
或 q-td--no-hover
类。
版权声明 本中文文档内容版权为站长个人所有,保留所有权利。
免责声明 本站点所包含的任何跳转链接均为第三方广告内容,站点对这些广告内容的准确性、合法性、真实性不承担任何责任。用户点击跳转链接进入第三方网站后,应自行判断广告内容的真实性和合法性,并自行承担因使用广告内容而产生的风险和责任。任何因使用第三方广告内容而导致的损失或损害,本站点概不负责。