MathJax v2.4 now available

After a smooth beta run, we’re happy to officially release MathJax v2.4.

MathJax v2.4 is available on the CDN, and for download from GitHub; see the documentation for details.

Version 2.4 is available on the CDN at

and starting today the files at the

address will be switched over the v2.4; it might take a few hours for the changes to propagate out to the distributed cloud servers.

During the time that the files are making their way out to the CDN’s servers, there may be a mixture of files in a browser cache, and so users may need to clear their cache and restart their browser in order to get a consistent version of the files.

If you are a page author and concerned about this, you can change (temporarily) to the mathjax/2.4-latest URL instead of mathjax/latest since that is a new address that will not have any cached older versions to worry about. You can switch back to mathjax/latest in a few days when the new version has migrated to all the locations in the cloud.

See for details about the changes in v2.4. We anticipate a smooth upgrade from v2.3 to v2.4, but as always, let us know on the bug tracker if you experience problems with this new version of MathJax.

Thank you for your continued support.

The MathJax Team.

New in MathJax v2.4

MathJax v2.4 is primarily a bug fix release. Numerous display bugs, line-breaking problems, and interface issues have been resolved; for a detailed listing please check the the documentation. The following are some of the highlights.

Content Security Policy

  • #256 Enable Content Security Policy compatibility.


  • #240 prevent two identical uses of \tag to cause identical element id.
  • #814 add TeX/Asciimath as annotation-xml to MathML output.


  • #617 add linebreaking support for mmultiscript elements.
  • #687 improve forced line breaking alignment.
  • #707 fix ignored line breaks between two mtext elements.

HTML-CSS/SVG/nativeMML display

  • #391 fix linebreaking within fractions in SVG output.
  • #423, #460, #749 Zoom improvements
  • #470 fix AMScd rendering in native MathML output.
  • #699 fix table column spacing in NativeMathML output on Firefox.
  • #770 add support for dotted borders to SVG output.

TeX emulation

  • #367 prevent \mmltoken from creating annotation elements.
  • #377 improve   handling.
  • #389 fix operating spacing in \split and \multiline environments.
  • #477, #459 add \textsf and \texttt macros and enable mtextInheritFont for them.
  • #547 fix misalignment in nested fractions in HTML-CSS and SVG output.
  • #624 fix AMScd on IE6–7.
  • #632 fix \Big not accepting delimiters in braces
  • #667 fix loop in bbox.
  • #691 enable multiple \label in multiline environments like align, eqnarray, and gather.
  • #739 fix \operatorname* and \DeclareMathOperator*.
  • #793 allow unmatched groups in \begin \end` substitutions.
  • #794 fix spacing for \bmod.


  • #353 add option for TeX-like \phi and \varphii behavior.
  • #743 add mmlSpacing option and set to true.
  • #747 fix processing error with invisible grouping.

MathML Handling

  • #561 implement menclose notation phaseorangle.
  • #691, #692 improve Content MathML extension
  • #328 remove _moz-*-attributes and improve MathML processing in Firefox.
  • #460 fix default value of mo@symmetric.
  • #478 make mfenced element equivalent to its expanded form
  • #578 fix quote attributes for ms elements.
  • #684 fix handling of double primes in superscripts.


  • #576 improve font matching.
  • #681 fix MathJax font test breaking responsive layout.
  • #711 detect new webfonts when locally installed.
  • #501 add workaround for broken Fedora STIX fonts configuration.


  • #753 update locales from; add Vietnamese, Asturia, Polish, Catalan, Czech, Kannada locales.
  • #777 fix menu orientation for RTL languages.


  • #658 fix IE 11 recognized as Firefox.
  • #730 ignore rendering targets that have been removed from document.
  • #737 add third-party path variable (for centralized custom extension hosting).