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

如何在JSP页面中将带HTML标签的纯文本渲染为带CSS样式的HTML内容

问题根因

你使用JSTL标签输出内容时默认开启了XML转义,会将HTML的<、>、引号等特殊字符转换为字符实体,浏览器会将转换后的内容识别为纯文本,不会解析其中的HTML标签,所以样式无法生效。

实现HTML正常渲染的方案
  • 方案1:使用<c:out>标签时主动关闭转义
    给<c:out>添加escapeXml="false"属性即可关闭默认转义,示例代码如下:
    <c:out value="${yourDbContent}" escapeXml="false" />
    
    其中${yourDbContent}替换为你从数据库读取内容对应的EL变量。
  • 方案2:直接使用EL表达式输出
    不使用<c:out>包裹,直接输出EL变量,EL表达式默认不会转义HTML内容,示例代码如下:
    ${yourDbContent}
    
注意事项

如果数据库存储的内容包含用户提交的可编辑内容,关闭HTML转义会存在XSS跨站脚本攻击风险,建议在存储或输出前对内容做安全过滤,移除<script>、<iframe>等恶意标签及相关事件属性。
如果渲染后样式仍未生效,可检查页面引入的CSS规则是否和内容中的HTML标签class、id属性匹配,确认是否存在CSS选择器权重不足导致样式被覆盖的问题。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.05 02:09:01