@DslMarker restricts implicit receivers in nested Kotlin DSL blocks. Without it, outer receivers remain available and can make an expression invoke the wrong receiver. section 13.2.2
Marking an HTML builder DSL
@DslMarker annotation class HtmlTagMarker @HtmlTagMarker open class Tag With this marker, nested receivers such as A and IMG cannot both be used implicitly when their types share the marker. An ambiguous assignment like href = "https://..." therefore fails; use an explicit receiver when necessary.
