Standalone links across the site are 17 to 26px tall, under any touch target floor #240
Labels
No Label
P0
P1
P2
P3
accessibility
backend
bug
content
data-integrity
enhancement
frontend
infra
integration
owner
owner-input
performance
phase-7
phase-8
release-blocker
security
seo
ui
ux
No Milestone
No project
No Assignees
1 Participants
Notifications
Due Date
No due date set.
Dependencies
No dependencies set.
Reference: null/Queue-North-Website#240
Loading…
Reference in New Issue
No description provided.
Delete Branch "%!s(<nil>)"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Found at build
a25077d. 491 findings across all 18 routes and all ten device profiles, in seven components: the three footer columns and the two phone links (a.text-navy-light, 17px), the header nav (17px), the privacy contents (17px), the related-links lists (26px), the back links (20px), the cardLearn morelinks (20px), and the standalone privacy address (20px).Links inside a sentence are deliberately untouched, because WCAG 2.5.8 exempts them, and padding would reach into the lines above and below.
LINK_CLASSinContentBlocksis used both ways, so it stays padding-free and the callers that need a target add.tap-targetbeside it.The trap, which cost a round: vertical padding on an
inlinebox is painted and hit-tested but does not enter the line box, so an inline link reports a tallergetBoundingClientRectwhile overlapping its neighbours. And atspace-y-2even aninline-blockoverlaps, because the negative margin does not shrink the box, only its effect on layout, so each link reached 8px into a gap its neighbour was already reaching 8px into and hit-testing gave the whole gap to whichever painted last. A target that measures right and is not there is worse than one that measures wrong. So.tap-targetisinline-block, and every list that uses it moves tospace-y-4/gap-y-4.Second trap: growing a 39x17 link to 39x36 changes how it is judged. At 17px tall it is row-shaped and wants 32px; at 36px tall it is compact and wants 44. Footer column links therefore also take
block, so the row is the target and the row rule applies. The header nav links takepy-3instead, which is free inside a 72px row.Also fixed here: the menu button was 40x40 where a compact control wants 44x44, and it is now the only navigation up to 1023px.
Verify:
node scripts/device-sweep.mjsreports zerotouch_targetfindings across all ten devices; removingtap-target blockfrom the footer columns and returning them tospace-y-2makes it report 342 again.