On this page


Download this notebook from GitHub (right-click to download).

import panel as pn


The HTML pane allows rendering arbitrary HTML in a panel. It renders strings containing valid HTML as well as objects with a _repr_html_ method and may define custom CSS styles.


For layout and styling related parameters see the customization user guide.

  • disable_math (boolean, default=True): Whether to disable MathJax math rendering for strings escaped with $$ delimiters.

  • object (str or object): The string or object with _repr_html_ method to display

  • style (dict): Dictionary specifying CSS styles

The HTML pane accepts the entire HTML5 spec including any embedded script tags, which will be executed. It also supports a style dictionary to apply styles to control the style of the <div> tag the HTML contents will be rendered in.

html_pane = pn.pane.HTML("""
<h1>This is an HTML pane</h1>

x = 5;<br>
y = 6;<br>
z = x + y;


""", style={'background-color': '#F6F6F6', 'border': '2px solid black',
            'border-radius': '5px', 'padding': '10px'})


To update the object or style we can simply set it:

html_pane.style = dict(html_pane.style, border='2px solid red')
This web page was generated from a Jupyter notebook and not all interactivity will work on this website. Right click to download and run locally for full Python-backed interactivity.

Download this notebook from GitHub (right-click to download).