Skip to content

fix(core/caniuse): use dl markup and CSS Grid layout - #5282

Draft
marcoscaceres wants to merge 3 commits into
mainfrom
fix/4090-caniuse-grid
Draft

fix(core/caniuse): use dl markup and CSS Grid layout#5282
marcoscaceres wants to merge 3 commits into
mainfrom
fix/4090-caniuse-grid

Conversation

@marcoscaceres

@marcoscaceres marcoscaceres commented May 9, 2026

Copy link
Copy Markdown
Contributor

Closes #4090

Replace div-based caniuse layout with semantic dl markup and CSS Grid.
Each dt/dd pair is wrapped in a div.caniuse-group for correct grid
column behavior.

Written with AI: this change was generated by Claude. Per AI_POLICY.md.

Replaces div-based layout with semantic dl (dt for browser type,
dd for browser cells). Switches from flexbox to CSS Grid with
auto-fit columns. More info link gets its own row.

Closes #4090
The dl's direct children (dt, dd) were being placed as individual
grid items, interleaving labels with browser cells instead of
grouping them vertically. Wrapping each pair in a div.caniuse-group
makes the grid operate on logical groups.

Also updates tests to query the new selectors.
@marcoscaceres
marcoscaceres force-pushed the fix/4090-caniuse-grid branch from dddb892 to 54a01af Compare May 14, 2026 15:22
@marcoscaceres marcoscaceres added the AI Contains AI-generated logic; see AI_POLICY.md label Aug 5, 2026
@marcoscaceres
marcoscaceres requested a balanced review from Copilot August 11, 2026 12:03

Copilot AI left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull request overview

Reworks Can I Use output with semantic definition-list markup and responsive CSS Grid layout.

Changes:

  • Uses dl/dt/dd markup for browser groups.
  • Moves “More info” onto its own row.
  • Updates styles and tests for the new structure.

Reviewed changes

Copilot reviewed 3 out of 3 changed files in this pull request and generated 1 comment.

File Description
src/core/caniuse.js Generates semantic grouped markup.
src/styles/caniuse.css.js Adds responsive grid layout.
tests/spec/core/caniuse-spec.js Updates selectors and expectations.

💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.

Comment on lines +227 to +228
expect(desktop.querySelector(".caniuse-type").textContent).toBe("desktop");
expect(mobile.querySelector(".caniuse-type").textContent).toBe("mobile");
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

AI Contains AI-generated logic; see AI_POLICY.md

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Caniuse feature improvements

2 participants