From 40528b738753e89544af5fea68fe5071a4a50b83 Mon Sep 17 00:00:00 2001 From: Daniel Perez Alvarez Date: Mon, 31 Jan 2022 13:45:52 -0800 Subject: [PATCH 1/3] Style `tfoot td` same as `tbody td` **Problem** If you've got a CMS that generates a `tfoot` tag for table footers, the `td`s contained in it are not aligned with the `td`s in `tbody`. **Solution** Style `tfoot td` the same as `tbody td`. --- src/styles.js | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/styles.js b/src/styles.js index d19ee33..23e1115 100644 --- a/src/styles.js +++ b/src/styles.js @@ -168,16 +168,16 @@ let defaultModifiers = { 'thead th:last-child': { paddingRight: '0', }, - 'tbody td': { + 'tbody td, tfoot td': { paddingTop: em(8, 12), paddingRight: em(12, 12), paddingBottom: em(8, 12), paddingLeft: em(12, 12), }, - 'tbody td:first-child': { + 'tbody td:first-child, tfoot td:first-child': { paddingLeft: '0', }, - 'tbody td:last-child': { + 'tbody td:last-child, tfoot td:last-child': { paddingRight: '0', }, }, From a9ef6fedf680a245ed947d20836d4e4bf66dcd80 Mon Sep 17 00:00:00 2001 From: Daniel Perez Alvarez Date: Mon, 31 Jan 2022 14:00:15 -0800 Subject: [PATCH 2/3] Add border to `tfoot` --- src/styles.js | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/src/styles.js b/src/styles.js index 23e1115..0df2c11 100644 --- a/src/styles.js +++ b/src/styles.js @@ -1422,6 +1422,10 @@ module.exports = { 'tbody td': { verticalAlign: 'baseline', }, + tfoot: { + borderTopWidth: '1px', + borderTopColor: 'var(--tw-prose-th-borders)', + }, }, defaultModifiers.gray.css, ...defaultModifiers.base.css, From 827bf53ec416bced4ca29ef4b09f243398005d6c Mon Sep 17 00:00:00 2001 From: Daniel Perez Alvarez Date: Tue, 1 Feb 2022 06:31:20 -0800 Subject: [PATCH 3/3] Update `tfoot` styles for all sizes --- src/styles.js | 27 +++++++++++++++------------ 1 file changed, 15 insertions(+), 12 deletions(-) diff --git a/src/styles.js b/src/styles.js index 0df2c11..c0d88b0 100644 --- a/src/styles.js +++ b/src/styles.js @@ -350,16 +350,16 @@ let defaultModifiers = { 'thead th:last-child': { paddingRight: '0', }, - 'tbody td': { + 'tbody td, tfoot td': { paddingTop: em(8, 14), paddingRight: em(8, 14), paddingBottom: em(8, 14), paddingLeft: em(8, 14), }, - 'tbody td:first-child': { + 'tbody td:first-child, tfoot td:first-child': { paddingLeft: '0', }, - 'tbody td:last-child': { + 'tbody td:last-child, tfoot td:last-child': { paddingRight: '0', }, }, @@ -532,16 +532,16 @@ let defaultModifiers = { 'thead th:last-child': { paddingRight: '0', }, - 'tbody td': { + 'tbody td, tfoot td': { paddingTop: em(12, 16), paddingRight: em(12, 16), paddingBottom: em(12, 16), paddingLeft: em(12, 16), }, - 'tbody td:first-child': { + 'tbody td:first-child, tfoot td:first-child': { paddingLeft: '0', }, - 'tbody td:last-child': { + 'tbody td:last-child, tfoot td:last-child': { paddingRight: '0', }, }, @@ -714,16 +714,16 @@ let defaultModifiers = { 'thead th:last-child': { paddingRight: '0', }, - 'tbody td': { + 'tbody td, tfoot td': { paddingTop: em(16, 18), paddingRight: em(12, 18), paddingBottom: em(16, 18), paddingLeft: em(12, 18), }, - 'tbody td:first-child': { + 'tbody td:first-child, tfoot td:first-child': { paddingLeft: '0', }, - 'tbody td:last-child': { + 'tbody td:last-child, tfoot td:last-child': { paddingRight: '0', }, }, @@ -896,16 +896,16 @@ let defaultModifiers = { 'thead th:last-child': { paddingRight: '0', }, - 'tbody td': { + 'tbody td, tfoot td': { paddingTop: em(16, 20), paddingRight: em(12, 20), paddingBottom: em(16, 20), paddingLeft: em(12, 20), }, - 'tbody td:first-child': { + 'tbody td:first-child, tfoot td:first-child': { paddingLeft: '0', }, - 'tbody td:last-child': { + 'tbody td:last-child, tfoot td:last-child': { paddingRight: '0', }, }, @@ -1426,6 +1426,9 @@ module.exports = { borderTopWidth: '1px', borderTopColor: 'var(--tw-prose-th-borders)', }, + 'tfoot td': { + verticalAlign: 'top', + }, }, defaultModifiers.gray.css, ...defaultModifiers.base.css,