Skip to content

Browser Bugs

fred-wang edited this page Apr 6, 2013 · 26 revisions

Browser Bugs

Browsers have several issues related to rendering of mathematical expressions or other features provided by MathJax. The most obvious one is the lack of a good MathML support but there are many other problems that MathJax tries to fix. However, adding specific workaround for each of the browser issue makes the MathJax code more complex and sometimes it may even not be possible to write such a workaround. Ideally all these bugs should be fixed upstream.

This page lists some bugs that the MathJax team found in browsers as well as the corresponding report entries. The main goal is to keep track of these issues so that we can eventually remove the workarounds and/or close the issues in our tracker once the bugs are fixed in the browsers. This can also help us to answer questions about possible bugs on the MathJax user mailing list. Finally, this may also be an interesting resource for browser vendors and users.

Some of these bugs are labelled Browser Bug in our issue tracker.

Internet Explorer

  • Loading MathJax in IE causes javascript error if the document contains 30 or more stylesheets See issue 60. Possible MathJax workaround: group in one stylesheet.

  • Entity definitions for characters are not up-to-date. See feedback 674766 (Fixed in Internet Explorer 10).

  • Comment causes IE to ignore rest of equation. See issue 89 (fixed in Internet Explorer mode 9)

  • Clipped Fractions in IE8 Standards Mode See issue 185 (fixed in latest version of Internet Explorer 8)

  • Crash in IE9/IE9 standards mode with setTimeout() and delay 0. See issue 170 MathJax workaround: Don't use setTimeout() if the delay is 0, and use delay of 0 for loading web fonts. Upstream bug report?

  • In IE10, use of the contextual menu blanks out the background See issue 204

  • IE10 beta errors on document.namespaces.add See issue 203

  • Brackets can be cut off in IE7 when STIX 1.0 fonts are used See issue 207

Firefox

MathJax Tracking Bug

  • Firefox rendering problems following full-width math See issue 231

  • Firefox 11 does not render first menclose correctly See issue 212

  • printing pages with downloadable fonts doesn't render all fonts on the page See bug 468568 and issue 172.

  • MathML bugs

    • Firefox: _moz-* attributes appear in the code generated by SourceElement() See bug 527201

    • Firefox NativeMML does not stretch direct child operators of an mtd/math See issue 385. bug 236963

    • Implement mspace with negative width See bug 717546

    • Support for the 'mathvariant' attribute See bug 114365

    • Allow downloading math fonts / bundle math fonts with Firefox for better MathML experience. See bug 295193.

    • Add support for mtable@rowspacing/columnspacing attributes See bug 330964. See issue 356 for MathJax workaround.

    • rendering of mtable with a columnalign attribute is sometimes incorrect. See bug 491384.

    • Improve MathML linebreaking. See bug 534962.

    • Improve/Complete implementation of maction. See bug 544036. Note: MathJax supports maction but is such an element generated by an input processor other than MathML?

    • mpadded: height/depth should apply to logical metrics. See bug 685628.

    • Base of munderover not stretched. See bug 687807.

    • Add support for mlabeledtr. See bug 689641. See issue 356 for MathJax workaround.

    • Problems printing MathML when @font-face is used. See issue 137 and bug 697053.

    • too much space between upright mi elements. See bug 320294 (fixed in Firefox 13).

    • mlabeledtr is not shown at all. See bug 356870 (fixed in Firefox 9). MathJax workaround: remove the label and convert mlabeledtr to mtr. (removed in MathJax 2.0)

    • mpadded: add support for the voffset attribute. See bug 557474 (fixed in Firefox 7).

    • Names for negative spaces are not supported. See bug 650530 (fixed in Firefox 7).

    • Support for attribute "width" on mtable. See bug 722880 (fixed in Firefox 13). MathJax workaround: attach a "style" attribute to the mtable element. See issue 214

  • Primes and other "pre-scripted" glyphs require special treatment when used within msup bug 442637

Webkit

MathJax Tracking Bug

  • DOM Element.children does not work on MathML elements. See bug 109556.

  • Integral sign cropped on MathJax's website with Chrome 24 See issue 250 and bug 108465.

  • Output in scaled foreignObject inside SVG in WebKit doesn't display See issue 279 and bug 93358.

  • STIX fonts do not work with Opera and Safari. See issue 265 and bug 24230 and bug 90337.

  • Bad alignment in table cells with "vertical-align: top" See bug 90335 and issue 253

  • Make foreignObject support HTML and MathML See bug 88188

  • Safari/Chrome: ⋹̸ and ⋵̸ are not supported. See bug 62187 and bug 43949. Fixed in the latest release of Chrome. Should probably come soon in Safari.

  • Chrome on XP can't access some web-font characters See issue 202, issue 239 and bug 112366

  • Chrome 18 messes up the Show As window See issue 221

  • -webkit-column-count crashes Mathjax in Chrome See issue 45 and bug 48983

  • Positioning error in dynamically inserted content. See issue 24, issue 175 and bug 50210. MathJax workaround: force a reflow when equations are shown.

  • STIX font problem on OS X Lion See issue 152 and issue 178, issue 179 and bug 67604. MathJax workaround: Use the names *-Regular or *-Italic as the font family.

  • MathML bugs MathML support in Webkit is still experimental and incomplete. Below are some bugs or missing features that may prevent people from using its native MathML support.

    • Multi-character and some Unicode <mi>s italic in WebKit but not Firefox. See bug 44208

    • msub/msup do not stretch operators See bug 47780

    • Scriptlevel attribute implementation See bug 49309

    • MathML operators not stretched horizontally See bug 72828

    • Add support for menclose element See bug 85729

    • Add support for mpadded element See bug 85730

    • Add support for mtable@rowspacing and mtable@columnspacing See bug 85731. See issue 356 for MathJax workaround.

    • Add support for mlabeledtr element See bug 85732. See issue 356 for MathJax workaround.

    • Add support for @href attribute in MathML See bug 85733

    • Add support for the maction element See bug 85734

    • Add support for @mathvariant attribute See bug 85735

Opera

  • On Opera the MathMenu triggering region only partially covers the math See issue 48.

  • &lang; and &rang; are not mapped to the right unicode characters. Bug report ID is DSK-343994.

  • Make foreignObject support HTML and MathML Bug report ID is DSK-365197.

  • STIX fonts do not work with Opera and Safari. See issue 265.

Clone this wiki locally