It's common to author content in markdown, and then programmatically generate html from it.
Markdown compilers typically do not include ways to add custom classes to their output.
Consequently, missing.css is relatively unusable with markdown generators when the content includes nested lists, since there's no easy way to add the class.
The potential content-side solutions include:
- using javascript to inject the class; this does not seem like an appropriate use for js
- parsing the output html and modifying it in-line; this is extremely complex for a script that otherwise just shells out to
cmark (for example)
- overriding the missing.css css in a second file
Since one of the goals of missing.css is to "build common components using plain, semantic HTML", and generated markdown is about as plain and semantic as it gets, this seems to be a good fit.
Of additional note, it's also a notable downgrade from classless css libraries, since those typically handle this use-case fine.
Potential solutions include:
- having the nested-list behavior be the default
- have an override that handles something like
ul:has(li ul)
It's common to author content in markdown, and then programmatically generate html from it.
Markdown compilers typically do not include ways to add custom classes to their output.
Consequently, missing.css is relatively unusable with markdown generators when the content includes nested lists, since there's no easy way to add the class.
The potential content-side solutions include:
cmark(for example)Since one of the goals of missing.css is to "build common components using plain, semantic HTML", and generated markdown is about as plain and semantic as it gets, this seems to be a good fit.
Of additional note, it's also a notable downgrade from classless css libraries, since those typically handle this use-case fine.
Potential solutions include:
ul:has(li ul)