w3c / w3c/mathml-core

Standardize layout constraints for operator stretching

Open
#138 2 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

css/html5 level-2 MathML Core need specification update
Dominant language
HTML
Stars
56
Forks
20
PR merge metrics
No merged PRs in 30d

Description

cc @bfgeek

I'm opening this for the record. This is described in https://mathml-refresh.github.io/mathml-core/#dfn-inline-stretch-size-constraint and used elsewhere in the MathML core specification.

Ideally, we should define them in the CSS layout API as three new double values:
https://drafts.css-houdini.org/css-layout-api/#layout-constraints

That way, if people write their own custom MathML layout (e.g. a custom mo operator relying on variable fonts or an mrow-like custom layout stretching its children) they could still receive / pass the layout constraints from their parent / to their childen.

As I said for other CSS features, this is still very hypothetical since math polyfills don't use modern techniques yet. So it makes sense to postpone this for now.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start with the MathML Core definition of the inline stretch size constraint and the CSS Houdini Layout API layout-constraints section linked in the issue. Determine whether the proposed three double values are still appropriate and how custom MathML layouts would pass them between parents and children. Done would require an agreed CSS Layout API design, not just a local repository change.

Written by the indexing model from the issue text.

Assessment

Tech stack
css, html
Domain
frontend, web-dev
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
18/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.