You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用HTML template模板时如何保留CSS样式?我的实现仅显示无格式文本

问题原因与解决方案

你的问题出在直接给模板克隆的DocumentFragment设置textContent,这会覆盖掉模板里原本的.message容器和<p>标签结构,只剩下纯文本,自然无法应用你写的CSS样式。

修改后的JS代码

document.addEventListener("DOMContentLoaded", ()=> {
    let button = document.getElementById("send_button");
    let template = document.getElementById("template_message");
    let screen = document.getElementById("screen");
    let message_text = document.getElementById("message_text");

    button.addEventListener("click", () => {
        let template_clone = template.content.cloneNode(true);
        // 找到克隆结构里的p标签,把输入值赋值给它
        template_clone.querySelector('p').textContent = message_text.value;
        screen.appendChild(template_clone);
        // 可选:清空输入框,提升交互体验
        message_text.value = '';
    })
})

说明

模板克隆出来的template_clone是一个DocumentFragment,里面包含了你定义的.message div和<p>标签。通过querySelector('p')定位到具体的文本容器,再设置它的内容,就能完整保留原本的DOM结构,CSS样式也就可以正常作用在.message和<p>上了。

内容的提问来源于stack exchange,提问作者user24168305

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.23 12:02:41