Insert HTML into your app.
Adding custom HTML to your app impacts safety, styling, and maintainability. We sanitize HTML with DOMPurify, but inserting HTML remains a developer risk. Passing untrusted code to st.html or dynamically loading external code can increase the risk of vulnerabilities in your app.
st.html content is not iframed. Executing JavaScript is not supported at this time.
Function signature[source] | |
---|---|
st.html(body) | |
Parameters | |
body (any) | The HTML code to insert. This can be one of the following:
If the resulting HTML content is empty, Streamlit will raise an error. If body is a path to a CSS file, Streamlit will wrap the CSS content in <style> tags automatically. When the resulting HTML content only contains style tags, Streamlit will send the content to the event container instead of the main container to avoid taking up space in the app. |
Example
Still have questions?
Our forums are full of helpful information and Streamlit experts.