<fragment href="site-menu.html"/>
Which would load my shared site wide menu html into the parent div.I'm not sure why JS would be needed here? (i.e in the same way html <select> elements are interactive without needing "JS").
Going a little more out there, what about cross domain imports for easy web component consumption?
<fragment href="https://weather-widget.org?location=london" />
I can't see how this would be less secure than current cross domain JS imports?It used to be sorta possible with HTML Imports but that spec got dropped [1].
But yes, HTML was clearly designed for producing output markup; but in reality the people who want to generate markup want to handle nested data, if/else, and loops, because that is better than copy pasting a bunch of markup everywhere and occasionally fat-fingering something.
h("div", { class: "container" }, [
h("p", {}, "oh hi!"),
...projects.map(renderProject),
])
the end result will have no JS if all you want is reuse HTML parts, much better than template languages imo (no additional syntax, has loops / functions / variables out of the box) <link rel="import" href="/partials/browser-vendors-hate-this.html" />Don’t need JS to do tracking, and browsers can track without needs any marketing tags at all
Obviously browsers that directly track users will lead a stinking public cloud and litigation. Vendors prefer their customers do the tracking for them. And make the ecosystem unable to function without tracking.
Compared to the older alert/confirm dialogue which was driven by a C++ browser window + JS boolean it kind of makes sense for <dialog> to use JS for such a thing and keep it within the HTML/stylable context. Like confirms the only place it will be used is within JS. So there's no separating the two really.
Unless you're just looking for a glorified HTML5 tag that you have to do yourself.
Personally I love single file components. In specified having html, js and my scss in the same file, but split into <template>, <script setup>, and <style>. Nuxt 3 is fantastic DX.
People want better abstraction than HTML, and JS is the only simple way.
Why i should use HTML input while i have better abstraction for it ?
TLDR is, HTML is the issue, not JS frameworks.
At least, none they publish first.