Support :root pseudo-class selector and rem unit as expected #240
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Recognize
:root
pseudo-class selector andrem
unit and transform styles while rendering, to reflect the view that the author expected by CSS theme.:root
will be transformed intosection
.font-size
declarations containing in the rule targeted intosection
(includes transformed from:root
) will assign tosection
container as--marpit-root-font-size
CSS custom property.XXrem
unit in all CSS declarations will be transformed intocalc(var(--marpit-root-font-size, 1rem) * XX)
. Thus,rem
within the context of Marpit will always be indicated a relative size from the root element of the slide (<section>
).The above theme CSS will transform into this CSS in the default constructor options:
The theme author can use
:root
selector andrem
unit with a familiar way, and don't have to take care of the root font size of the integrated service. And developer using Marpit also doesn't have to take care of the font size in the root and the Marpit container.Resolves #232.
ToDo