If, in this language, you wanted to have this feature in combination with what I proposed, you could simply mark the attribute-like children, to inform the engine that it should apply different defaults for them and unmarked children that it doesn't recognize.
This is what I do in the first variant of my language:
a [
href=[...]
[...]
]
the `=` appended to `href` marks it as an attribute.This certainly simplifies things when translating to HTML.
But if we were not constrained by the legacy of HTML then perhaps bothering with this when designing a new language would be unnecessary. Maybe not having this default behavior does not matter in practice and you can have a simpler language without it.
To determine whether that's the case it would help to answer: when is the feature you described useful in HTML? And also: when is this feature harmful?