From 90bc998fc2aa002162a1051415fd0d4d7f82323a Mon Sep 17 00:00:00 2001 From: Nathnael Dereje Date: Mon, 2 Nov 2026 12:20:14 +0100 Subject: [PATCH] fix: Use JS-driven isLast class instead of CSS th:last-child for borderless resizer positioning With column groups, a standalone column with rowspan=2 is rendered in the group header row only. The leaf row's th:last-child becomes the group's last leaf column, not the table's rightmost column. The CSS rule pulled that column's resizer 12px inward, misaligning it with the group header divider. Replace the th:last-child CSS rule with the existing JS-driven .is-last class, which correctly identifies the rightmost column via colIndex + colSpan === totalColumns regardless of rowspan. --- src/table/resizer/styles.scss | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/src/table/resizer/styles.scss b/src/table/resizer/styles.scss index 4c5eda6d1d2..a46a32a22b0 100644 --- a/src/table/resizer/styles.scss +++ b/src/table/resizer/styles.scss @@ -25,10 +25,6 @@ $block-gap: cell-base.$divider-block-gap; inline-size: $handle-width; overflow: hidden; z-index: 10; - - th:last-child > &:has(.divider-interactive).is-borderless { - inset-inline-end: 0; - } } .resizer-button-wrapper { @@ -86,6 +82,10 @@ th:not([data-rightmost]) > .divider, /* used in test-utils */ } +.resizer-wrapper.is-borderless.is-last { + inset-inline-end: 0; +} + .resizer-wrapper.visual-refresh.is-borderless.is-last { > .divider-interactive { inset-inline-end: 0;