สำหรับนักพัฒนาเว็บที่ต้องทำระบบแปลงเอกสาร Word (.docx) ไปเป็น HTML หรือต้องการจัดรูปแบบตารางบนเว็บไซต์ให้มีมาตรฐานและความเรียบร้อยเทียบเท่าแกลเลอรีสไตล์ใน Microsoft Word ความท้าทายหลักคือการแปลงรหัส Built-in Table Style ID ของมาตรฐาน OpenXML (ECMA-376) ให้กลายเป็นคลาส CSS ที่มีความยืดหยุ่น
บทความนี้ได้รวบรวมและสร้างสเปก CSS จำลองสไตล์ตารางมาตรฐานของ Microsoft Word ครบทั้งตระกูล Plain Tables, Grid Tables และ List Tables โดยใช้สถาปัตยกรรม CSS Custom Properties (CSS Variables) เลียนแบบระบบ Theme Colors และ Tint/Shade ของ Office ได้อย่างแม่นยำ
โครงสร้างชุดสี Theme Palette และสูตรคำนวณ Tint/Shade
ใน OpenXML ค่าสีของตารางจะไม่ใช้การ Hardcode แต่จะผูกกับตัวแปร accent1 ถึง accent6 และแปลงความสว่างด้วยการผสมสีขาว (Tint) เราสามารถจำลองพาเลตต์เริ่มต้นของ Microsoft 365 (Modern Theme) ได้ดังนี้
:root {
/* Microsoft 365 Standard Theme Colors */
--ms-dark1: #000000;
--ms-light1: #ffffff;
--ms-dark2: #242424;
--ms-light2: #f5f5f5;
--ms-border-neutral: #d1d1d1;
/* Accent 1 - 6 */
--ms-accent1: #0f6cbd;
--ms-accent2: #115ea3;
--ms-accent3: #004e8c;
--ms-accent4: #0067b8;
--ms-accent5: #4f6bed;
--ms-accent6: #6264a7;
/* Tint 20% สำหรับ Banded Rows (ผสมสีขาว 80%) */
--ms-accent1-tint20: #cfe4fa;
--ms-accent2-tint20: #cfe1f5;
--ms-accent3-tint20: #cce0f0;
--ms-accent4-tint20: #cce5f7;
--ms-accent5-tint20: #dee4fc;
--ms-accent6-tint20: #e2e2f2;
/* Tint 40% สำหรับเส้นขอบและเฉดสีรอง */
--ms-accent1-tint40: #9fc9f6;
--ms-accent2-tint40: #9fc3ec;
--ms-accent3-tint40: #99c2e1;
--ms-accent4-tint40: #99cbee;
--ms-accent5-tint40: #bdc9f9;
--ms-accent6-tint40: #c5c5e5;
}
CSS Framework จำลองทุก Built-in Table Style ID
โครงสร้าง CSS ด้านล่างนี้ถูกออกแบบให้ตรงกับชื่อคลาสตาม Style ID ของ OpenXML โดยคำนึงถึงเงื่อนไขของ TableLook เช่น thead สำหรับ First Row, tfoot สำหรับ Total Row, th:first-child สำหรับ First Column และ tbody tr:nth-child(even) สำหรับ Banded Rows
/* ==========================================================================
0. Base Table Reset (เทียบเท่าคุณสมบัติพื้นฐานทั้งตาราง)
========================================================================== */
table[class*="Table"],
table[class*="PlainTable"],
table[class*="GridTable"],
table[class*="ListTable"] {
width: 100%;
border-collapse: collapse;
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
font-size: 14px;
line-height: 1.5;
color: var(--ms-dark2);
margin: 1.5rem 0;
}
table[class*="Table"] th,
table[class*="Table"] td,
table[class*="PlainTable"] th,
table[class*="PlainTable"] td,
table[class*="GridTable"] th,
table[class*="GridTable"] td,
table[class*="ListTable"] th,
table[class*="ListTable"] td {
padding: 8px 12px;
text-align: left;
vertical-align: middle;
}
/* ==========================================================================
1. Plain Tables
========================================================================== */
/* TableNormal: ตารางเปล่า ไร้เส้นกรอบและสีพื้น */
.TableNormal th,
.TableNormal td {
border: none;
background: transparent;
}
/* TableGrid: ตารางกริดมาตรฐาน มีเส้นรอบด้านสีเทากลาง */
.TableGrid th,
.TableGrid td {
border: 1px solid var(--ms-border-neutral);
}
/* PlainTable1: ตารางเรียบง่าย มีเฉพาะเส้นขอบบน-ล่าง */
.PlainTable1 {
border-top: 1px solid var(--ms-dark1);
border-bottom: 1px solid var(--ms-dark1);
}
.PlainTable1 th, .PlainTable1 td { border: none; }
/* PlainTable2: มีเส้นขอบบางรอบนอกและเส้นคั่นหัวตาราง */
.PlainTable2 {
border: 1px solid var(--ms-border-neutral);
}
.PlainTable2 thead th {
border-bottom: 1px solid var(--ms-border-neutral);
font-weight: 600;
}
/* PlainTable3: เส้นขอบหนาด้านบน-ล่าง */
.PlainTable3 {
border-top: 2px solid var(--ms-dark1);
border-bottom: 2px solid var(--ms-dark1);
}
.PlainTable3 thead th {
border-bottom: 1px solid var(--ms-border-neutral);
}
/* PlainTable4: เส้นประแบ่งแถว */
.PlainTable4 thead th {
border-bottom: 2px solid var(--ms-dark1);
}
.PlainTable4 tbody tr td {
border-bottom: 1px dashed var(--ms-border-neutral);
}
/* PlainTable5: เส้นคู่ด้านล่างสำหรับสรุปผล */
.PlainTable5 thead th { border-bottom: 1px solid var(--ms-dark1); }
.PlainTable5 tfoot tr td {
border-top: 1px solid var(--ms-dark1);
border-bottom: 3px double var(--ms-dark1);
font-weight: 700;
}
/* ==========================================================================
2. Grid Tables (Light)
========================================================================== */
.GridTable1Light th,
.GridTable1Light td {
border: 1px solid var(--ms-border-neutral);
}
.GridTable1Light thead th {
font-weight: 600;
border-bottom: 2px solid var(--ms-border-neutral);
}
/* Template สร้าง Accent 1 - 6 สำหรับ GridTable1Light */
.GridTable1Light-Accent1 { --cur-accent: var(--ms-accent1); }
.GridTable1Light-Accent2 { --cur-accent: var(--ms-accent2); }
.GridTable1Light-Accent3 { --cur-accent: var(--ms-accent3); }
.GridTable1Light-Accent4 { --cur-accent: var(--ms-accent4); }
.GridTable1Light-Accent5 { --cur-accent: var(--ms-accent5); }
.GridTable1Light-Accent6 { --cur-accent: var(--ms-accent6); }
[class*="GridTable1Light-Accent"] th,
[class*="GridTable1Light-Accent"] td {
border: 1px solid var(--cur-accent);
}
[class*="GridTable1Light-Accent"] thead th {
font-weight: 600;
color: var(--cur-accent);
border-bottom: 2px solid var(--cur-accent);
}
/* ==========================================================================
3. Grid Tables (Medium: สไตล์ยอดนิยม แถบหัวสีทึบ + แถวสลับ)
========================================================================== */
.GridTable2-Accent1, .GridTable4-Accent1 { --cur-accent: var(--ms-accent1); --cur-tint: var(--ms-accent1-tint20); --cur-border: var(--ms-accent1-tint40); }
.GridTable2-Accent2, .GridTable4-Accent2 { --cur-accent: var(--ms-accent2); --cur-tint: var(--ms-accent2-tint20); --cur-border: var(--ms-accent2-tint40); }
.GridTable2-Accent3, .GridTable4-Accent3 { --cur-accent: var(--ms-accent3); --cur-tint: var(--ms-accent3-tint20); --cur-border: var(--ms-accent3-tint40); }
.GridTable2-Accent4, .GridTable4-Accent4 { --cur-accent: var(--ms-accent4); --cur-tint: var(--ms-accent4-tint20); --cur-border: var(--ms-accent4-tint40); }
.GridTable2-Accent5, .GridTable4-Accent5 { --cur-accent: var(--ms-accent5); --cur-tint: var(--ms-accent5-tint20); --cur-border: var(--ms-accent5-tint40); }
.GridTable2-Accent6, .GridTable4-Accent6 { --cur-accent: var(--ms-accent6); --cur-tint: var(--ms-accent6-tint20); --cur-border: var(--ms-accent6-tint40); }
/* GridTable2: หัวตารางทึบ มีเส้นกรอบรอบด้าน แถวสลับเว้นสี */
[class*="GridTable2-Accent"] th,
[class*="GridTable2-Accent"] td {
border: 1px solid var(--cur-border);
}
[class*="GridTable2-Accent"] thead th {
background-color: var(--cur-accent);
color: var(--ms-light1);
font-weight: 600;
}
[class*="GridTable2-Accent"] tbody tr:nth-child(even) {
background-color: var(--cur-tint);
}
[class*="GridTable2-Accent"] tfoot td {
font-weight: 700;
border-top: 2px solid var(--cur-accent);
border-bottom: 3px double var(--cur-accent);
}
/* GridTable4: เพิ่มการเน้น First Column (คอลัมน์แรก) */
[class*="GridTable4-Accent"] th,
[class*="GridTable4-Accent"] td {
border: 1px solid var(--cur-border);
}
[class*="GridTable4-Accent"] thead th {
background-color: var(--cur-accent);
color: var(--ms-light1);
font-weight: 600;
}
[class*="GridTable4-Accent"] tbody tr:nth-child(even) {
background-color: var(--cur-tint);
}
[class*="GridTable4-Accent"] tbody td:first-child {
font-weight: 600;
color: var(--cur-accent);
}
/* ==========================================================================
4. Grid Tables (Dark / Colorful)
========================================================================== */
.GridTable6Colorful-Accent1 { --cur-accent: var(--ms-accent1); --cur-tint: var(--ms-accent1-tint20); }
.GridTable6Colorful-Accent2 { --cur-accent: var(--ms-accent2); --cur-tint: var(--ms-accent2-tint20); }
.GridTable6Colorful-Accent3 { --cur-accent: var(--ms-accent3); --cur-tint: var(--ms-accent3-tint20); }
.GridTable6Colorful-Accent4 { --cur-accent: var(--ms-accent4); --cur-tint: var(--ms-accent4-tint20); }
.GridTable6Colorful-Accent5 { --cur-accent: var(--ms-accent5); --cur-tint: var(--ms-accent5-tint20); }
.GridTable6Colorful-Accent6 { --cur-accent: var(--ms-accent6); --cur-tint: var(--ms-accent6-tint20); }
[class*="GridTable6Colorful-Accent"] thead th {
background-color: var(--cur-accent);
color: var(--ms-light1);
border: 1px solid var(--ms-light1);
}
[class*="GridTable6Colorful-Accent"] tbody tr:nth-child(odd) {
background-color: var(--cur-tint);
}
[class*="GridTable6Colorful-Accent"] tbody tr:nth-child(even) {
background-color: var(--ms-light1);
}
[class*="GridTable6Colorful-Accent"] td {
border: 1px solid var(--ms-light1);
}
/* ==========================================================================
5. List Tables (ตัดเส้นแนวตั้งทิ้งทั้งหมด)
========================================================================== */
/* ตัวปรับคุณสมบัติเฉพาะของ List Tables ทุกตัว */
[class*="ListTable"] th,
[class*="ListTable"] td {
border-left: none !important;
border-right: none !important;
}
/* ListTable1: เส้นขีดแนวนอนเรียบง่าย */
.ListTable1Light thead th {
border-top: 1px solid var(--ms-dark1);
border-bottom: 1px solid var(--ms-dark1);
font-weight: 600;
}
.ListTable1Light tbody td {
border-bottom: 1px solid var(--ms-light2);
}
.ListTable1Light tfoot td {
border-top: 1px solid var(--ms-dark1);
border-bottom: 2px solid var(--ms-dark1);
}
/* ListTable3: หัวตารางทึบ แถวสลับสี ไร้เส้นแนวตั้ง */
.ListTable3-Accent1 { --cur-accent: var(--ms-accent1); --cur-tint: var(--ms-accent1-tint20); }
.ListTable3-Accent2 { --cur-accent: var(--ms-accent2); --cur-tint: var(--ms-accent2-tint20); }
.ListTable3-Accent3 { --cur-accent: var(--ms-accent3); --cur-tint: var(--ms-accent3-tint20); }
.ListTable3-Accent4 { --cur-accent: var(--ms-accent4); --cur-tint: var(--ms-accent4-tint20); }
.ListTable3-Accent5 { --cur-accent: var(--ms-accent5); --cur-tint: var(--ms-accent5-tint20); }
.ListTable3-Accent6 { --cur-accent: var(--ms-accent6); --cur-tint: var(--ms-accent6-tint20); }
[class*="ListTable3-Accent"] thead th {
background-color: var(--cur-accent);
color: var(--ms-light1);
border-bottom: none;
font-weight: 600;
}
[class*="ListTable3-Accent"] tbody tr:nth-child(even) {
background-color: var(--cur-tint);
}
[class*="ListTable3-Accent"] tbody td {
border-bottom: 1px solid rgba(0, 0, 0, 0.05);
}
[class*="ListTable3-Accent"] tfoot td {
font-weight: 700;
border-top: 2px solid var(--cur-accent);
border-bottom: 1px solid var(--cur-accent);
}
ตัวอย่างการนำไปใช้งานบน HTML / WordPress
สามารถนำคลาสเหล่านี้ไปใส่ในแท็ก <table> ของคุณได้ทันที โดยโครงสร้างตาราง HTML ที่รองรับคุณสมบัติครบถ้วนควรมีทั้ง <thead>, <tbody> และ <tfoot> ดังตัวอย่าง
<!-- ตัวอย่างการเรียกใช้ Grid Table 2 - Accent 1 -->
<table class="GridTable2-Accent1">
<thead>
<tr>
<th>รหัสรายการ</th>
<th>รายละเอียดงาน</th>
<th>ผู้รับผิดชอบ</th>
<th>สถานะ</th>
</tr>
</thead>
<tbody>
<tr>
<td>TASK-101</td>
<td>ออกแบบสถาปัตยกรรมระบบ</td>
<td>System Analyst</td>
<td>เสร็จสิ้น</td>
</tr>
<tr>
<td>TASK-102</td>
<td>พัฒนาโมดูล Export OpenXML</td>
<td>Developer</td>
<td>กำลังดำเนินการ</td>
</tr>
<tr>
<td>TASK-103</td>
<td>ตรวจสอบและทดสอบคุณภาพ CSS</td>
<td>QA Tester</td>
<td>รอดำเนินการ</td>
</tr>
</tbody>
<tfoot>
<tr>
<td colspan="3">รวมรายการทั้งหมด</td>
<td>3 รายการ</td>
</tr>
</tfoot>
</table>
สรุปจุดสำคัญในการแปลง OpenXML สู่ CSS
- Banded Rows: จำลองได้ง่ายด้วย
:nth-child(even)บน<tbody>ช่วยให้อ่านข้อมูลแนวยาวได้สบายตา - List Tables: จุดเด่นคือการใช้คำสั่ง
border-left: noneและborder-right: noneเพื่อให้ได้สไตล์แบบมินิมอลที่กำลังเป็นที่นิยมใน Web Dashboard - Theming Support: เมื่อสร้างตัวแปรครอบด้วย CSS Custom Properties หากต้องการเปลี่ยนธีมเอกสารทั้งหน้าเว็บเป็นแบบคลาสสิก (Office 2013–2022) ก็เพียงแค่แก้ค่าสีของ
--ms-accent1ถึง--ms-accent6ที่:rootตารางทุกสไตล์จะเปลี่ยนสีตามทันทีโดยไม่ต้องแก้ไข CSS Classes รายตัว
Microsoft Word Built-in Table Styles Catalog.html
<!DOCTYPE html>
<html lang="th">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Microsoft Word Built-in Table Styles Catalog</title>
<style>
:root {
/* Microsoft 365 Theme Colors */
--ms-dark1: #000000;
--ms-light1: #ffffff;
--ms-dark2: #242424;
--ms-light2: #f5f5f5;
--ms-border: #d1d1d1;
/* Accent 1 - 6 */
--ms-accent1: #0f6cbd;
--ms-accent2: #115ea3;
--ms-accent3: #004e8c;
--ms-accent4: #0067b8;
--ms-accent5: #4f6bed;
--ms-accent6: #6264a7;
/* Tint 20% สำหรับ Banded Rows */
--ms-accent1-tint20: #cfe4fa;
--ms-accent2-tint20: #cfe1f5;
--ms-accent3-tint20: #cce0f0;
--ms-accent4-tint20: #cce5f7;
--ms-accent5-tint20: #dee4fc;
--ms-accent6-tint20: #e2e2f2;
/* Tint 40% สำหรับเส้นขอบ */
--ms-accent1-tint40: #9fc9f6;
--ms-accent2-tint40: #9fc3ec;
--ms-accent3-tint40: #99c2e1;
--ms-accent4-tint40: #99cbee;
--ms-accent5-tint40: #bdc9f9;
--ms-accent6-tint40: #c5c5e5;
}
body {
font-family: -apple-system, BlinkMacSystemFont, "Segoe UI", Roboto, "Helvetica Neue", Arial, sans-serif;
padding: 2.5rem 5%;
color: var(--ms-dark2);
background-color: #fafafa;
line-height: 1.6;
}
h1 {
text-align: center;
margin-bottom: 2rem;
color: var(--ms-dark1);
}
h2 {
margin-top: 2rem;
margin-bottom: 0.75rem;
font-size: 1.25rem;
color: #333333;
}
hr {
border: 0;
border-top: 1px solid #e0e0e0;
margin: 2.5rem 0;
}
/* Base Table Structure */
table {
width: 100%;
border-collapse: collapse;
font-size: 14px;
background: var(--ms-light1);
margin-bottom: 1rem;
}
th, td {
padding: 10px 14px;
text-align: left;
vertical-align: middle;
}
/* 1. Plain Tables */
.TableNormal th, .TableNormal td { border: none; background: transparent; }
.TableGrid th, .TableGrid td { border: 1px solid var(--ms-border); }
.PlainTable1 { border-top: 1px solid var(--ms-dark1); border-bottom: 1px solid var(--ms-dark1); }
.PlainTable1 th, .PlainTable1 td { border: none; }
.PlainTable2 { border: 1px solid var(--ms-border); }
.PlainTable2 thead th { border-bottom: 1px solid var(--ms-border); font-weight: 600; }
.PlainTable3 { border-top: 2px solid var(--ms-dark1); border-bottom: 2px solid var(--ms-dark1); }
.PlainTable3 thead th { border-bottom: 1px solid var(--ms-border); font-weight: 600; }
.PlainTable4 thead th { border-bottom: 2px solid var(--ms-dark1); font-weight: 600; }
.PlainTable4 tbody td { border-bottom: 1px dashed var(--ms-border); }
.PlainTable5 thead th { border-bottom: 1px solid var(--ms-dark1); font-weight: 600; }
.PlainTable5 tfoot td { border-top: 1px solid var(--ms-dark1); border-bottom: 3px double var(--ms-dark1); font-weight: bold; }
/* 2. Grid Tables (Light) */
.GridTable1Light th, .GridTable1Light td { border: 1px solid var(--ms-border); }
.GridTable1Light thead th { border-bottom: 2px solid var(--ms-border); font-weight: 600; }
.GridTable1Light-Accent1 { --cur-accent: var(--ms-accent1); }
.GridTable1Light-Accent2 { --cur-accent: var(--ms-accent2); }
.GridTable1Light-Accent3 { --cur-accent: var(--ms-accent3); }
.GridTable1Light-Accent4 { --cur-accent: var(--ms-accent4); }
.GridTable1Light-Accent5 { --cur-accent: var(--ms-accent5); }
.GridTable1Light-Accent6 { --cur-accent: var(--ms-accent6); }
[class*="GridTable1Light-Accent"] th,
[class*="GridTable1Light-Accent"] td { border: 1px solid var(--cur-accent); }
[class*="GridTable1Light-Accent"] thead th { color: var(--cur-accent); font-weight: 600; border-bottom: 2px solid var(--cur-accent); }
/* 3. Grid Tables (Medium) */
.GridTable2-Accent1, .GridTable4-Accent1 { --cur-accent: var(--ms-accent1); --cur-tint: var(--ms-accent1-tint20); --cur-border: var(--ms-accent1-tint40); }
.GridTable2-Accent2, .GridTable4-Accent2 { --cur-accent: var(--ms-accent2); --cur-tint: var(--ms-accent2-tint20); --cur-border: var(--ms-accent2-tint40); }
.GridTable2-Accent3, .GridTable4-Accent3 { --cur-accent: var(--ms-accent3); --cur-tint: var(--ms-accent3-tint20); --cur-border: var(--ms-accent3-tint40); }
.GridTable2-Accent4, .GridTable4-Accent4 { --cur-accent: var(--ms-accent4); --cur-tint: var(--ms-accent4-tint20); --cur-border: var(--ms-accent4-tint40); }
.GridTable2-Accent5, .GridTable4-Accent5 { --cur-accent: var(--ms-accent5); --cur-tint: var(--ms-accent5-tint20); --cur-border: var(--ms-accent5-tint40); }
.GridTable2-Accent6, .GridTable4-Accent6 { --cur-accent: var(--ms-accent6); --cur-tint: var(--ms-accent6-tint20); --cur-border: var(--ms-accent6-tint40); }
[class*="GridTable2-Accent"] th, [class*="GridTable2-Accent"] td { border: 1px solid var(--cur-border); }
[class*="GridTable2-Accent"] thead th { background-color: var(--cur-accent); color: var(--ms-light1); font-weight: 600; }
[class*="GridTable2-Accent"] tbody tr:nth-child(even) { background-color: var(--cur-tint); }
[class*="GridTable2-Accent"] tfoot td { font-weight: bold; border-top: 2px solid var(--cur-accent); border-bottom: 3px double var(--cur-accent); }
[class*="GridTable4-Accent"] th, [class*="GridTable4-Accent"] td { border: 1px solid var(--cur-border); }
[class*="GridTable4-Accent"] thead th { background-color: var(--cur-accent); color: var(--ms-light1); font-weight: 600; }
[class*="GridTable4-Accent"] tbody tr:nth-child(even) { background-color: var(--cur-tint); }
[class*="GridTable4-Accent"] tbody td:first-child { font-weight: 600; color: var(--cur-accent); }
[class*="GridTable4-Accent"] tfoot td { font-weight: bold; border-top: 2px solid var(--cur-accent); border-bottom: 3px double var(--cur-accent); }
/* 4. Grid Tables (Dark / Colorful) */
.GridTable6Colorful-Accent1 { --cur-accent: var(--ms-accent1); --cur-tint: var(--ms-accent1-tint20); }
.GridTable6Colorful-Accent2 { --cur-accent: var(--ms-accent2); --cur-tint: var(--ms-accent2-tint20); }
.GridTable6Colorful-Accent3 { --cur-accent: var(--ms-accent3); --cur-tint: var(--ms-accent3-tint20); }
.GridTable6Colorful-Accent4 { --cur-accent: var(--ms-accent4); --cur-tint: var(--ms-accent4-tint20); }
.GridTable6Colorful-Accent5 { --cur-accent: var(--ms-accent5); --cur-tint: var(--ms-accent5-tint20); }
.GridTable6Colorful-Accent6 { --cur-accent: var(--ms-accent6); --cur-tint: var(--ms-accent6-tint20); }
[class*="GridTable6Colorful-Accent"] thead th { background-color: var(--cur-accent); color: var(--ms-light1); border: 1px solid var(--ms-light1); font-weight: 600; }
[class*="GridTable6Colorful-Accent"] tbody tr:nth-child(odd) { background-color: var(--cur-tint); }
[class*="GridTable6Colorful-Accent"] tbody tr:nth-child(even) { background-color: var(--ms-light1); }
[class*="GridTable6Colorful-Accent"] td { border: 1px solid var(--ms-light1); }
/* 5. List Tables (ตัดเส้นแนวตั้งออกทั้งหมด) */
[class*="ListTable"] th, [class*="ListTable"] td { border-left: none !important; border-right: none !important; }
.ListTable1Light thead th { border-top: 1px solid var(--ms-dark1); border-bottom: 1px solid var(--ms-dark1); font-weight: 600; }
.ListTable1Light tbody td { border-bottom: 1px solid var(--ms-light2); }
.ListTable1Light tfoot td { border-top: 1px solid var(--ms-dark1); border-bottom: 2px solid var(--ms-dark1); font-weight: bold; }
.ListTable3-Accent1 { --cur-accent: var(--ms-accent1); --cur-tint: var(--ms-accent1-tint20); }
.ListTable3-Accent2 { --cur-accent: var(--ms-accent2); --cur-tint: var(--ms-accent2-tint20); }
.ListTable3-Accent3 { --cur-accent: var(--ms-accent3); --cur-tint: var(--ms-accent3-tint20); }
.ListTable3-Accent4 { --cur-accent: var(--ms-accent4); --cur-tint: var(--ms-accent4-tint20); }
.ListTable3-Accent5 { --cur-accent: var(--ms-accent5); --cur-tint: var(--ms-accent5-tint20); }
.ListTable3-Accent6 { --cur-accent: var(--ms-accent6); --cur-tint: var(--ms-accent6-tint20); }
[class*="ListTable3-Accent"] thead th { background-color: var(--cur-accent); color: var(--ms-light1); border-bottom: none; font-weight: 600; }
[class*="ListTable3-Accent"] tbody tr:nth-child(even) { background-color: var(--cur-tint); }
[class*="ListTable3-Accent"] tbody td { border-bottom: 1px solid rgba(0, 0, 0, 0.05); }
[class*="ListTable3-Accent"] tfoot td { font-weight: bold; border-top: 2px solid var(--cur-accent); border-bottom: 1px solid var(--cur-accent); }
</style>
</head>
<body>
<h1>Microsoft Word Built-in Table Styles Catalog</h1>
<!-- 1. Plain Tables -->
<h2>TableNormal</h2>
<table class="TableNormal">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>TableGrid</h2>
<table class="TableGrid">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>PlainTable1</h2>
<table class="PlainTable1">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>PlainTable2</h2>
<table class="PlainTable2">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>PlainTable3</h2>
<table class="PlainTable3">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>PlainTable4</h2>
<table class="PlainTable4">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>PlainTable5</h2>
<table class="PlainTable5">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<!-- 2. Grid Tables (Light) -->
<h2>GridTable1Light</h2>
<table class="GridTable1Light">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable1Light-Accent1</h2>
<table class="GridTable1Light-Accent1">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable1Light-Accent2</h2>
<table class="GridTable1Light-Accent2">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable1Light-Accent3</h2>
<table class="GridTable1Light-Accent3">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable1Light-Accent4</h2>
<table class="GridTable1Light-Accent4">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable1Light-Accent5</h2>
<table class="GridTable1Light-Accent5">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable1Light-Accent6</h2>
<table class="GridTable1Light-Accent6">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿33,000.00</td></tr>
</tfoot>
</table>
<hr>
<!-- 3. Grid Tables (Medium) -->
<h2>GridTable2-Accent1</h2>
<table class="GridTable2-Accent1">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable2-Accent2</h2>
<table class="GridTable2-Accent2">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable2-Accent3</h2>
<table class="GridTable2-Accent3">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable2-Accent4</h2>
<table class="GridTable2-Accent4">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable2-Accent5</h2>
<table class="GridTable2-Accent5">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable2-Accent6</h2>
<table class="GridTable2-Accent6">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable4-Accent1</h2>
<table class="GridTable4-Accent1">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<!-- 4. Grid Tables (Dark / Colorful) -->
<h2>GridTable6Colorful-Accent1</h2>
<table class="GridTable6Colorful-Accent1">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>GridTable6Colorful-Accent2</h2>
<table class="GridTable6Colorful-Accent2">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<!-- 5. List Tables -->
<h2>ListTable1Light</h2>
<table class="ListTable1Light">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>ListTable3-Accent1</h2>
<table class="ListTable3-Accent1">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>ListTable3-Accent2</h2>
<table class="ListTable3-Accent2">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
<hr>
<h2>ListTable3-Accent6</h2>
<table class="ListTable3-Accent6">
<thead>
<tr><th>รหัสสินค้า</th><th>ชื่อรายการ</th><th>จำนวน</th><th>ราคาต่อหน่วย</th></tr>
</thead>
<tbody>
<tr><td>SKU-001</td><td>Cloud Service Subscription</td><td>12</td><td>฿1,500.00</td></tr>
<tr><td>SKU-002</td><td>Managed Security Module</td><td>1</td><td>฿15,000.00</td></tr>
<tr><td>SKU-003</td><td>Data Backup Solution</td><td>6</td><td>฿2,400.00</td></tr>
</tbody>
<tfoot>
<tr><td colspan="3">รวมทั้งสิ้น</td><td>฿47,400.00</td></tr>
</tfoot>
</table>
</body>
</html>