express.ui.navset_pill_list

express.ui.navset_pill_list(
    id=None
    selected=None
    header=None
    footer=None
    well=True
    widths=(4, 8)
)

Context manager for a set of nav items as a tabset inside a card container.

This function wraps navset_pill_list.

Parameters

id : Optional[str] = None

If provided, will create an input value that holds the currently selected nav item.

selected : Optional[str] = None

Choose a particular nav item to select by default value (should match its value).

header : TagChild = None

UI to display above the selected content.

footer : TagChild = None

UI to display below the selected content.

well : bool = True

True to place a well (gray rounded rectangle) around the navigation list.

widths : tuple[int, int] = (4, 8)

Column widths of the navigation list and tabset content areas respectively.

Examples

#| standalone: true
#| components: [editor, viewer]
#| layout: vertical
#| viewerHeight: 400

## file: app.py
from shiny.express import input, render, ui

with ui.navset_pill_list(id="selected_navset_pill_list"):
    with ui.nav_panel("A"):
        "Panel A content"

    with ui.nav_panel("B"):
        "Panel B content"

    with ui.nav_panel("C"):
        "Panel C content"

    with ui.nav_menu("Other links"):
        with ui.nav_panel("D"):
            "Page D content"

        "----"
        "Description:"
        with ui.nav_control():
            ui.a("Shiny", href="https://shiny.posit.co", target="_blank")
ui.h5("Selected:")


@render.code
def _():
    return input.selected_navset_pill_list()