ui.page_navbar(*args, title=None, id=None, selected=None, sidebar=None, fillable=False, fillable_mobile=False, gap=None, padding=None, position='static-top', header=None, footer=None, bg=None, inverse=False, underline=True, collapsible=True, fluid=True, window_title=MISSING, lang=None, theme=None)

Create a page with a navbar and a title.


*args: NavSetArg | MetadataNode | Sequence[MetadataNode] = ()

UI elements.

title: Optional[str | Tag | TagList] = None

The browser window title (defaults to the host URL of the page). Can also be set as a side effect via panel_title.

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).

sidebar: Optional[Sidebar] = None

A sidebar component to display on every page.

fillable: bool | list[str] = False

Whether or not the main content area should be considered a fillable (i.e., flexbox) container.

fillable_mobile: bool = False

Whether or not fillable should apply on mobile devices.

position: Literal[‘static-top’, ‘fixed-top’, ‘fixed-bottom’] = ‘static-top’

Determines whether the navbar should be displayed at the top of the page with normal scrolling behavior (“static-top”), pinned at the top (“fixed-top”), or pinned at the bottom (“fixed-bottom”). Note that using “fixed-top” or “fixed-bottom” will cause the navbar to overlay your body content, unless you add padding (e.g., tags.style("body {padding-top: 70px;}")).

header: Optional[TagChild] = None

UI to display above the selected content.

footer: Optional[TagChild] = None

UI to display below the selected content.

bg: Optional[str] = None

Background color of the navbar (a CSS color).

inverse: bool = False

Either True for a light text color or False for a dark text color.

collapsible: bool = True

True to automatically collapse the elements into an expandable menu on mobile devices or narrow window widths.

fluid: bool = True

True to use fluid layout; False to use fixed layout.

window_title: str | MISSING_TYPE = MISSING

The browser’s window title (defaults to the host URL of the page). Can also be set as a side effect via panel_title.

lang: Optional[str] = None

ISO 639-1 language code for the HTML page, such as "en" or "ko". This will be used as the lang in the <html> tag, as in <html lang="en">. The default, None, results in an empty string.

theme: Optional[str | Path | ThemeProvider] = None

A path to a local or online CSS file that will replace the Bootstrap CSS bundled by default with a Shiny app. This file should be a complete bootstrap.css or bootstrap.min.css file.

For advanced uses, you can also pass a Tagifiable object. In this case, Shiny will suppress the default Bootstrap CSS.

To modify the theme of an app without replacing the Bootstrap CSS entirely, use include_css to add custom CSS.


Type Description
Tag A UI element.

See Also


See nav.