Skip to content

[CSS] T0.1 Formalize the browser floor #17709

Description

@simeonoff

Part of #17707.

Our theme styles already depend on container style queries, which need Firefox 151+ and Safari 18+. Angular's default browser targets are lower (Chrome/Edge/Firefox 119+, Safari 17), so on those older versions the design-system rules don't apply today. This task documents the floor we actually have, so the rest of #17669 can rely on it.

What to do

  1. Check the Firefox ESR. Confirm the current Firefox ESR version. If an ESR below 151 is still in its support window, raise it here before going further.
  2. Add the library browserslist at projects/igniteui-angular/.browserslistrc:
    Chrome >= 131
    Edge >= 131
    Firefox >= 151
    Safari >= 18
    iOS >= 18
    
  3. Document it. Add a "Browser support" section to the README and mention it in the release notes.
  4. Compare with Web Components. Check which floor Ignite UI for Web Components uses, and note any difference here.

Done when

  • The browserslist and the README section are merged.
  • The ESR check result is recorded in this issue.

Activity

  1. added theissue type on Oct 5, 2026
  2. simeonoff commented on Oct 8, 2026

    @simeonoff
    MemberAuthor

    Firefox ESR check (2026-10-08): the floor holds.

    • ESR 140 got its last update (140.17) on 2026-09-29 and reaches end of life on 2026-10-13, when its users move to ESR 153. These users already don't get the design-system styles today, since style queries need Firefox 151.
    • ESR 153 is the current ESR.
    • ESR 115 still gets security fixes until March 2027, but only on Windows 7–8.1 and macOS 10.12–10.14. Angular's own default (Firefox 119+) already excludes it.

    Sources: whattrainisitnow.com ESR status, Mozilla on ESR 115.

    Web Components: igniteui-webcomponents declares "browserslist": ["defaults"] and lists "Latest" for every browser in its README, so it has no explicit floor. Worth aligning with that team.

    Approach: after discussion, the library's .browserslistrc narrows Angular's default instead of replacing it, building on the reasoning in #14528. See #17756.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions