Skip to content

Lazy UI rendering for "block" fails in Safari with "overflow-x: auto" #3579

Description

@sethrj

Issue Summary

With the latest Safari on macOS, using the Furo style sheets (2025.12.19), the "lazy" UI loader does not render math blocks, but inline text renders. After bisecting the generated HTML, this seems to happen due to the overflow-x: auto; property being applied to the div enclosing the math.

Steps to Reproduce:

  1. Load a page with Safari and the ui/lazy loader, e.g.: https://celeritas-project.github.io/celeritas/user/implementation/em-physics/brems.html#cross-sections
  2. Inline mathjax renders, but blocks do not.

Reloading without ui/lazy allows normal rendering. The page also seems to
work in Chrome. It also works if the overflow-x: auto; is removed.

Technical details:

  • MathJax Version: 3.2.2 OR 4.1.2
  • Client OS: (e.g., Mac OS X 10.8.4)
  • Browser: Safari 26.5 (21624.2.5.11.4)

I am using the following MathJax configuration:

MathJax = {"loader": {"load": ["ui/lazy"]}}
};

and loading MathJax via

    <script defer="defer" src="https://cdn.jsdelivr.net/npm/mathjax@4/tex-mml-chtml.js"></script>

Supporting information:

Image After `MathJax.startup.document.state(0, true);`: Image

With overflow-x removed:

Image

Metadata

Metadata

Assignees

No one assigned

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions