diff --git a/unpacked/jax/output/HTML-CSS/autoload/menclose.js b/unpacked/jax/output/HTML-CSS/autoload/menclose.js
index 81fd2b309..35ac3f0e7 100644
--- a/unpacked/jax/output/HTML-CSS/autoload/menclose.js
+++ b/unpacked/jax/output/HTML-CSS/autoload/menclose.js
@@ -1,3 +1,5 @@
+/* -*- Mode: Javascript; indent-tabs-mode:nil; js-indent-level: 2 -*- */
+/* vim: set ts=2 et sw=2 tw=80: */
/*************************************************************
*
* MathJax/jax/output/HTML-CSS/autoload/menclose.js
@@ -36,12 +38,12 @@ MathJax.Hub.Register.StartupHook("HTML-CSS Jax Ready",function () {
if (values.color && !this.mathcolor) {values.mathcolor = values.color}
if (values.thickness == null) {values.thickness = ".075em"}
if (values.padding == null) {values.padding = ".2em"}
+ span = this.HTMLcreateSpan(span);
var mu = this.HTMLgetMu(span), scale = this.HTMLgetScale();
var p = HTMLCSS.length2em(values.padding,mu,1/HTMLCSS.em) * scale; // padding for enclosure
var t = HTMLCSS.length2em(values.thickness,mu,1/HTMLCSS.em); // thickness of lines (not scaled, see issue #414)
var SOLID = HTMLCSS.Em(t)+" solid";
- span = this.HTMLcreateSpan(span);
var stack = HTMLCSS.createStack(span);
var base = HTMLCSS.createBox(stack);
this.HTMLmeasureChild(0,base);
diff --git a/unpacked/jax/output/HTML-CSS/autoload/mmultiscripts.js b/unpacked/jax/output/HTML-CSS/autoload/mmultiscripts.js
index 3c3bd4587..41c39c3fd 100644
--- a/unpacked/jax/output/HTML-CSS/autoload/mmultiscripts.js
+++ b/unpacked/jax/output/HTML-CSS/autoload/mmultiscripts.js
@@ -1,3 +1,5 @@
+/* -*- Mode: Javascript; indent-tabs-mode:nil; js-indent-level: 2 -*- */
+/* vim: set ts=2 et sw=2 tw=80: */
/*************************************************************
*
* MathJax/jax/output/HTML-CSS/autoload/mmultiscripts.js
@@ -43,7 +45,17 @@ MathJax.Hub.Register.StartupHook("HTML-CSS Jax Ready",function () {
var BOX = this.HTMLgetScripts(stack,s);
var sub = BOX[0], sup = BOX[1], presub = BOX[2], presup = BOX[3];
- var sscale = (this.data[1]||this).HTMLgetScale();
+ // children other than the base can be ,
+ // , etc so try to get HTMLgetScale from the
+ // first element with a spanID. See issue 362.
+ var sscale = this.HTMLgetScale();
+ for (var i = 1; i < this.data.length; i++) {
+ if (this.data[i] && this.data[i].spanID) {
+ sscale = this.data[i].HTMLgetScale();
+ break;
+ }
+ }
+
var q = HTMLCSS.TeX.sup_drop * sscale, r = HTMLCSS.TeX.sub_drop * sscale;
var u = base.bbox.h - q, v = base.bbox.d + r, delta = 0, p;
if (base.bbox.ic) {delta = base.bbox.ic}
diff --git a/unpacked/jax/output/HTML-CSS/jax.js b/unpacked/jax/output/HTML-CSS/jax.js
index 4517dc3f2..2a6036fe4 100644
--- a/unpacked/jax/output/HTML-CSS/jax.js
+++ b/unpacked/jax/output/HTML-CSS/jax.js
@@ -2531,7 +2531,14 @@
if (sup) {sup.bbox.w += s; sup.bbox.rw = Math.max(sup.bbox.w,sup.bbox.rw)}
if (sub) {sub.bbox.w += s; sub.bbox.rw = Math.max(sub.bbox.w,sub.bbox.rw)}
HTMLCSS.placeBox(base,0,0);
- var sscale = (this.data[this.sup] || this.data[this.sub] || this).HTMLgetScale();
+ var sscale;
+ if (sup) {
+ sscale = this.data[this.sup].HTMLgetScale();
+ } else if (sub) {
+ sscale = this.data[this.sub].HTMLgetScale();
+ } else {
+ sscale = this.HTMLgetScale();
+ }
var q = HTMLCSS.TeX.sup_drop * sscale, r = HTMLCSS.TeX.sub_drop * sscale;
var u = base.bbox.h - q, v = base.bbox.d + r, delta = 0, p;
if (base.bbox.ic) {