我刚刚尝试使用< style>
标记可以完成与< script>
标记完全相同的事情,如果有人需要模板的话。但我在互联网上找不到使用< style type =“text / x-template”>
的任何用法。
所以,我的问题是......为什么< script>
是首选?这里有任何历史原因或浏览器兼容性原因吗?
以下是演示:



(function(){
 let output = document.getElementById('output' );
 let template = document.getElementById('template');
 let dom = document.createElement('div');
 dom.innerHTML = template.innerHTML;
 dom.getElementsByClassName('todo')[0] .textContent ='42';
 output.appendChild(dom);& #xD;
}());

 &lt ; style id =“template”type =“text / x-template”>
< div>这是来自模板!< / div>
< div class =“todo”>< / div>
< div>这也来自模板!< / div>
< / style>& #xD;&#XA ;< div>输出前的内容:< / div>
< span id =“output”>
< / span>
< / PRE>&#的xD;&#XA;
答案 0 :(得分:1)
很好的问题,虽然我不认为这是一个很好的答案。
这些模板通常由javascript代码读取和处理。因此,与用于CSS的<script>
标记相比,使用<style>
标记来识别它们更有意义。
现在您将使用template tag as described here。
可悲的IE 11 still doesn't support it, but the rest of browser support is pretty good