Bug 689641 (mlabeledtr-support)

Add support for mlabeledtr




8 years ago
5 years ago


(Reporter: fredw, Unassigned, Mentored)


(Blocks: 4 bugs, {dev-doc-needed, helpwanted})

dev-doc-needed, helpwanted
Dependency tree / graph

Firefox Tracking Flags

(Not tracked)


(Whiteboard: [lang=c++], URL)


(1 attachment)



8 years ago
Created attachment 562803 [details]
Keywords: dev-doc-needed

Comment 2

7 years ago
Because of the vertical alignment requirement, it seems that the most easy way to implement this is to follow the REC's  suggested model:

"To place a label, an implementor might think in terms of creating a larger table, with an extra column on both ends. The columnwidth attributes of both these border columns would be set to "fit" so that they expand to fill whatever space remains after the inner columns have been laid out. Finally, depending on the values of side and minlabelspacing, the label is placed in whatever border column is appropriate, possibly shifted down if necessary, and aligned according to columnalignment."

So maybe we should do something in nsCSSFrameConstructor to add extra column on both ends of an <mtr> or <mlabeledtr> element (with the label placed in the appropriate extra cell in the latter case). We will need to change the implementation of rowlines, columnlines etc to take into account that we have these extra columns. That would give a slightly incorrect implementation of mtable@width, though.

Comment 3

6 years ago
An add-on to workaround this bug:

Comment 4

6 years ago
Someone from the Webkit MathML team contacted me about this bug today. Adding me as mentor, although I don't know well the code in nsCSSFrameConstructor to change. I think even something like
Whiteboard: [mentor=fredw][lang=c++]

Comment 5

6 years ago
I think even something like what David Carlisle's XSLT stylesheet do would be OK (adding a column to <mtable>'s that have a <mlabeledtr> child).

Comment 6

6 years ago
Mass change: setting priority to 2 for bugs that would be nice fix if Gecko's MathML support is enabled by default in MathJax but that are not in my opinion strictly required or for which a workaround could be written in the MathJax code.
Priority: -- → P2


6 years ago
Priority: P2 → P4


5 years ago
Blocks: 958947
Mentor: fred.wang
Whiteboard: [mentor=fredw][lang=c++] → [lang=c++]
You need to log in before you can comment on or make changes to this bug.