Skip to content

CSS: table

.instui-table — ตารางข้อมูลที่มีสไตล์สำหรับ th และ td พร้อมคำบรรยายตัวเลือก โดยรองรับการเน้นเมื่อชี้เมาส์, เลย์เอาต์คอลัมน์คงที่ และรูปแบบการ์ดซ้อน

สำหรับ -layout-stacked CSS ล้วนไม่สามารถดึงข้อความของหัวคอลัมน์แต่ละอันมาใส่ในเซลล์ได้ ดังนั้นให้แต่ละเซลล์มี data-label และในรูปแบบการ์ดซ้อนจะแสดงผ่าน ::before ดูสมาชิก table.head, table.body, table.row, table.cell, table.col-header และ table.row-header สำหรับส่วนย่อยแต่ละชิ้น

Source: body.css

การเข้าถึง

ติดป้ายตารางด้วย <caption>, ทำเครื่องหมายหัวคอลัมน์เป็น <th scope="col"> และหัวแถวเป็น <th scope="row">, และใน -layout-stacked ให้ทุกเซลล์มี data-label เนื่องจากแถวหัวตารางถูกซ่อนทางสายตา

การใช้งาน

css
@import "@pantoken/components/components.css";
@import "@pantoken/components/table.css";

ตัวอย่าง

html
<table class="instui-table -hover">
  <caption>Top-rated films</caption>
  <thead>
    <tr>
      <th scope="col">Rank</th>
      <th scope="col">Title</th>
      <th scope="col">Year</th>
      <th scope="col">Rating</th>
    </tr>
  </thead>
  <tbody>
    <tr>
      <th scope="row">1</th>
      <td>The Shawshank Redemption</td>
      <td>1994</td>
      <td>9.3</td>
    </tr>
    <tr>
      <th scope="row">2</th>
      <td>The Godfather</td>
      <td>1972</td>
      <td>9.2</td>
    </tr>
    <tr>
      <th scope="row">3</th>
      <td>The Godfather: Part II</td>
      <td>1974</td>
      <td>9.0</td>
    </tr>
  </tbody>
</table>

โครงสร้าง

text
.instui-table.-hover
  caption
  thead
    th
  tbody
    tr
      td, th[scope="row"]
flowchart TD n0[".instui-table.-hover"]:::cssdoc-root n1("caption"):::cssdoc-part n2("thead"):::cssdoc-part n3("th"):::cssdoc-part n4("tbody"):::cssdoc-part n5("tr"):::cssdoc-part n6("td, th[scope=&quot;row&quot;]"):::cssdoc-part n0 --> n1 n2 --> n3 n0 --> n2 n5 --> n6 n4 --> n5 n0 --> n4 classDef cssdoc-root stroke-width:1px; classDef cssdoc-part stroke-width:1px; classDef cssdoc-slot stroke-width:1px; classDef cssdoc-component stroke-width:1px;

ตัวปรับแต่ง

ตัวปรับแต่งคำอธิบาย
.-hoverเน้นแถวเมื่อชี้เมาส์. @affects table.row — จองพื้นที่และกำหนดสีให้ขอบเมื่อแถวถูกชี้
.-layout-fixedเลย์เอาต์ตารางแบบคงที่ (คอลัมน์ความกว้างเท่ากัน)
.-layout-stackedจัดเรียงแต่ละแถวเป็นการ์ด โดยใช้ data-label ต่อเซลล์. @affects table.head @affects table.body @affects table.row @affects table.cell @affects table.col-header @affects table.row-header — จัดสแตกแต่ละส่วนเป็นบล็อกและซ่อน/ติดป้ายหัวตารางตามลำดับ

ส่วนประกอบ

ส่วนคำอธิบาย
.captionคำบรรยายตาราง (ตัวเลือก)

โทเค็นที่ใช้

Tokenชนิดค่า
--instui-component-table-background<color>LightDarklight-dark(#ffffff, #10141A)
--instui-component-table-cell-padding-horizontal<length>0.75rem
--instui-component-table-cell-padding-vertical<length>0.5rem
--instui-component-table-col-header-color<color>LightDarklight-dark(#273540, #F2F4F5)
--instui-component-table-color<color>LightDarklight-dark(#273540, #ffffff)
--instui-component-table-font-family[ <font-family-name> | <generic-font-family> ]#Atkinson Hyperlegible Next, "Helvetica Neue", Helvetica, Arial, sans-serif
--instui-component-table-font-size<length>1rem
--instui-component-table-head-font-weight<integer>600

ส่วนประกอบย่อย