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

GitHub部署Streamlit应用后HTML与CSS无法正常渲染求助

Streamlit部署GitHub后HTML样式失效的解决方法

问题根源

你代码里用了转义后的HTML字符串(比如<p>、")定义反馈样式,本地环境因调试模式逻辑宽松能自动解析,但部署到GitHub相关环境后,平台严格遵循HTML解析规则,转义字符会被当作普通文本处理,导致样式无法生效。

修正方案

直接使用原始HTML字符串,搭配st.markdown()的unsafe_allow_html=True参数渲染,这是Streamlit官方认可的自定义HTML/CSS方式。

修改后的核心代码

if st.session_state.user_answer == st.session_state.correct_answer:
    st.session_state.feedback = '<p style="background-color: green; padding: 10px; border-radius: 5px;"><b style="color: black;">Correct!</b></p>'
else:
    st.session_state.feedback = f'<p style="background-color: lightcoral; padding: 10px; border-radius: 5px;"><b style="color: black;">Incorrect.</b> The correct answer is <b>{st.session_state.correct_answer}</b></p>'

# 渲染反馈内容时执行这行
st.markdown(st.session_state.feedback, unsafe_allow_html=True)

额外注意事项

  • 确认部署环境的Streamlit版本和本地一致,版本差异可能引发渲染逻辑不同。
  • 不要使用过于复杂的CSS属性,Streamlit对部分CSS特性的支持在部署环境中有限。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.22 00:31:00