Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Improve error messages for misnested elements #77

Open
aantron opened this issue Nov 29, 2023 · 0 comments
Open

Improve error messages for misnested elements #77

aantron opened this issue Nov 29, 2023 · 0 comments

Comments

@aantron
Copy link
Owner

aantron commented Nov 29, 2023

From ocsigen/tyxml#322:

There is a popular way to style checkbox based on this HTML code:

  <label class="switch" for="checkbox">
    <input type="checkbox" id="checkbox" />
    <div class="slider"></div>
  </label>

What I did not realise is that this HTML, although popular, does not respect the specification (div should be span here).

TyXML does detect that and correctly rejects the program:

let%html checkbox =
  "<label class='switch' for='checkbox'>"
    "<input type='checkbox' id='checkbox' />"
    "<div class='slider'></div>"
  "</label>"

However, the error message is just wrong: Error: Unmatched start tag 'label', pointing at the beginning of the label element. It took me quite a long time to understand what was happening: it would be nice to have it pointing to the div element instead and state that it can't be within a label element.

I'm using TyXML 4.6.0 with tyxml-ppx.

cc @Mbodin

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant