rstudio / rstudio/bslib

`.dropdown-menu`'s z-index is insufficient to hide sidebar toggle arrow

Open
#1,210 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
SCSS
Stars
569
Forks
72
Avg merge
1d 2h
Merged PRs (30d)
5

Description

Describe the problem

When using a page_navbar() together with a nav_menu() and a nav_panel(), the sidebar's toggle arrow remains visible when a dropdown menu is open.

Image

The correct appearance should be as follows.

Image

Reproducible example

Link to shinyapps.io

library(shiny)
library(bslib)

# Define UI for application that draws a histogram
ui <- page_navbar(
  title = "Z-index debug",
  nav_menu("Test", nav_panel("Content A", layout_sidebar()))
)

# Define server logic required to draw a histogram
server <- function(input, output) {
}

# Run the application
shinyApp(ui = ui, server = server)

Fix through CSS, any value greater than 1000 (the default) does the trick (link to shinyapps.io)

library(shiny)
library(bslib)

# Define UI for application that draws a histogram
ui <- tagList(
  # Add custom CSS to override dropdown menu z-index
  # Any value > 1000 works
  tags$head(
    tags$style(HTML(
      "
      .dropdown-menu {
        --bs-dropdown-zindex: 1001;
      }
    "
    )),
    page_navbar(
      title = "Z-index debug",
      nav_menu(
        title = "Test",
        nav_panel("Content A", layout_sidebar())
      )
    )
  )
)

# Define server logic required to draw a histogram
server <- function(input, output) {
}

# Run the application
shinyApp(ui = ui, server = server)
Session Info

─ Session info ───────────────────────────────────────────────────────────────────────────────────────────────────
 setting  value
 version  R version 4.5.0 (2025-04-11)
 os       Ubuntu 24.04.2 LTS
 system   x86_64, linux-gnu
 ui       RStudio
 language (EN)
 collate  C.UTF-8
 ctype    C.UTF-8
 tz       Europe/Brussels
 date     2025-05-07
 rstudio  2025.04.0-daily+401 Mariposa Orchid (desktop)
 pandoc   3.1.3 @ /usr/bin/pandoc
 quarto   1.6.42 @ /usr/lib/rstudio/resources/app/bin/quarto/bin/quarto

─ Packages ───────────────────────────────────────────────────────────────────────────────────────────────────────
! package * version date (UTC) lib source
P attempt 0.3.1 2020-05-03 [?] RSPM (R 4.5.0)
P backports 1.5.0 2024-05-23 [?] CRAN (R 4.5.0)
P brio 1.1.5 2024-04-24 [?] CRAN (R 4.5.0)
P bsicons 0.1.2 2023-11-04 [?] CRAN (R 4.5.0)
P bslib * 0.9.0 2025-01-30 [?] CRAN (R 4.5.0)
P cachem 1.1.0 2024-05-16 [?] CRAN (R 4.5.0)
P checkmate 2.3.2 2024-07-29 [?] CRAN (R 4.5.0)
P class 7.3-23 2025-01-01 [?] CRAN (R 4.4.2)
P cli 3.6.5 2025-04-23 [?] CRAN (R 4.5.0)
P codetools 0.2-20 2024-03-31 [?] CRAN (R 4.4.0)
P commonmark 1.9.5 2025-03-17 [?] CRAN (R 4.5.0)
P config 0.3.2 2023-08-30 [?] RSPM (R 4.5.0)
R CPEPEApp * 2.2.0 [?]
P crosstalk 1.2.1 2023-11-23 [?] CRAN (R 4.5.0)
P data.table 1.17.0 2025-02-22 [?] CRAN (R 4.5.0)
P DBI 1.2.3 2024-06-02 [?] CRAN (R 4.5.0)
P desc 1.4.3 2023-12-10 [?] CRAN (R 4.5.0)
P devtools 2.4.5 2022-10-11 [?] CRAN (R 4.5.0)
P digest 0.6.37 2024-08-19 [?] CRAN (R 4.5.0)
P dplyr 1.1.4 2023-11-17 [?] CRAN (R 4.5.0)
P DT 0.33 2024-04-04 [?] CRAN (R 4.5.0)
P duckdb 1.2.2 2025-04-29 [?] CRAN (R 4.5.0)
P easyalluvial 0.3.2 2023-12-07 [?] CRAN (R 4.5.0)
P ellipsis 0.3.2 2021-04-29 [?] CRAN (R 4.5.0)
P evaluate 1.0.3 2025-01-10 [?] CRAN (R 4.5.0)
P farver 2.1.2 2024-05-13 [?] CRAN (R 4.5.0)
P fastmap 1.2.0 2024-05-15 [?] CRAN (R 4.5.0)
P fontawesome 0.5.3 2024-11-16 [?] CRAN (R 4.5.0)
P forcats 1.0.0 2023-01-29 [?] CRAN (R 4.5.0)
fs 1.6.6 2025-04-12 [1] CRAN (R 4.5.0)
future 1.40.0 2025-04-10 [1] CRAN (R 4.5.0)
P future.apply 1.11.3 2024-10-27 [?] CRAN (R 4.5.0)
P generics 0.1.3 2022-07-05 [?] CRAN (R 4.5.0)
P ggalluvial 0.12.5 2023-02-22 [?] CRAN (R 4.5.0)
P ggplot2 3.5.2 2025-04-09 [?] CRAN (R 4.5.0)
P ggridges 0.5.6 2024-01-23 [?] CRAN (R 4.5.0)
P globals 0.17.0 2025-04-16 [?] CRAN (R 4.5.0)
P glue 1.8.0 2024-09-30 [?] CRAN (R 4.5.0)
P golem 0.5.1 2024-08-27 [?] RSPM (R 4.5.0)
P gower 1.0.2 2024-12-17 [?] CRAN (R 4.5.0)
P gridExtra 2.3 2017-09-09 [?] CRAN (R 4.5.0)
P gtable 0.3.6 2024-10-25 [?] CRAN (R 4.5.0)
P hardhat 1.4.1 2025-01-31 [?] CRAN (R 4.5.0)
P htmltools 0.5.8.1 2024-04-04 [?] CRAN (R 4.5.0)
P htmlwidgets 1.6.4 2023-12-06 [?] CRAN (R 4.5.0)
P httpuv 1.6.16 2025-04-16 [?] CRAN (R 4.5.0)
P ipred 0.9-15 2024-07-18 [?] CRAN (R 4.5.0)
P jquerylib 0.1.4 2021-04-26 [?] CRAN (R 4.5.0)
P jsonlite 2.0.0 2025-03-27 [?] CRAN (R 4.5.0)
P knitr 1.50 2025-03-16 [?] RSPM (R 4.5.0)
P labeling 0.4.3 2023-08-29 [?] CRAN (R 4.5.0)
P later 1.4.2 2025-04-08 [?] CRAN (R 4.5.0)
P lattice 0.22-5 2023-10-24 [?] CRAN (R 4.3.3)
P lava 1.8.1 2025-01-12 [?] CRAN (R 4.5.0)
P lifecycle 1.0.4 2023-11-07 [?] CRAN (R 4.5.0)
listenv 0.9.1 2024-01-29 [1] CRAN (R 4.5.0)
P litedown 0.7 2025-04-08 [?] CRAN (R 4.5.0)
P lubridate 1.9.4 2024-12-08 [?] CRAN (R 4.5.0)
P magrittr 2.0.3 2022-03-30 [?] CRAN (R 4.5.0)
P markdown 2.0 2025-03-23 [?] CRAN (R 4.5.0)
P MASS 7.3-65 2025-02-28 [?] CRAN (R 4.4.3)
P Matrix 1.7-3 2025-03-11 [?] CRAN (R 4.4.3)
P memoise 2.0.1 2021-11-26 [?] CRAN (R 4.5.0)
P mime 0.13 2025-03-17 [?] CRAN (R 4.5.0)
P miniUI 0.1.2 2025-04-17 [?] CRAN (R 4.5.0)
P nnet 7.3-20 2025-01-01 [?] CRAN (R 4.4.2)
parallelly 1.43.0 2025-03-24 [1] CRAN (R 4.5.0)
P parcats 0.0.5 2023-12-10 [?] CRAN (R 4.5.0)
P pillar 1.10.2 2025-04-05 [?] CRAN (R 4.5.0)
P pkgbuild 1.4.7 2025-03-24 [?] CRAN (R 4.5.0)
P pkgconfig 2.0.3 2019-09-22 [?] CRAN (R 4.5.0)
P pkgload 1.4.0 2024-06-28 [?] CRAN (R 4.5.0)
prodlim 2025.04.28 2025-04-28 [1] CRAN (R 4.5.0)
P profvis 0.4.0 2024-09-20 [?] CRAN (R 4.5.0)
P progressr 0.15.1 2024-11-22 [?] CRAN (R 4.5.0)
P promises 1.3.2 2024-11-28 [?] CRAN (R 4.5.0)
P purrr 1.0.4 2025-02-05 [?] CRAN (R 4.5.0)
P R6 2.6.1 2025-02-15 [?] CRAN (R 4.5.0)
P ragg 1.4.0 2025-04-10 [?] CRAN (R 4.5.0)
P RColorBrewer 1.1-3 2022-04-03 [?] CRAN (R 4.5.0)
P Rcpp 1.0.14 2025-01-12 [?] CRAN (R 4.5.0)
P recipes 1.3.0 2025-04-17 [?] CRAN (R 4.5.0)
P remotes 2.5.0 2024-03-17 [?] CRAN (R 4.5.0)
renv 1.1.4 2025-03-20 [1] CRAN (R 4.5.0)
rlang 1.1.6 2025-04-11 [1] CRAN (R 4.5.0)
P rpart 4.1.24 2025-01-07 [?] CRAN (R 4.4.2)
P rprojroot 2.0.4 2023-11-05 [?] RSPM (R 4.5.0)
P rstudioapi 0.17.1 2024-10-22 [?] CRAN (R 4.5.0)
sass 0.4.10 2025-04-11 [1] CRAN (R 4.5.0)
P scales 1.4.0 2025-04-24 [?] CRAN (R 4.5.0)
P sessioninfo 1.2.3 2025-02-05 [?] CRAN (R 4.5.0)
P shiny * 1.10.0 2024-12-14 [?] CRAN (R 4.5.0)
P shinycssloaders 1.1.0 2024-07-30 [?] CRAN (R 4.5.0)
P shinydisconnect 0.1.1 2023-08-21 [?] CRAN (R 4.5.0)
P shinyjs 2.1.0 2021-12-23 [?] CRAN (R 4.5.0)
P sourcetools 0.1.7-1 2023-02-01 [?] CRAN (R 4.5.0)
P stringi 1.8.7 2025-03-27 [?] CRAN (R 4.5.0)
P stringr 1.5.1 2023-11-14 [?] CRAN (R 4.5.0)
P survival 3.8-3 2024-12-17 [?] CRAN (R 4.4.2)
P systemfonts 1.2.3 2025-04-30 [?] CRAN (R 4.5.0)
P testthat * 3.2.3 2025-01-13 [?] CRAN (R 4.5.0)
P textshaping 1.0.1 2025-05-01 [?] CRAN (R 4.5.0)
P tibble 3.2.1 2023-03-20 [?] CRAN (R 4.5.0)
P tidyr 1.3.1 2024-01-24 [?] CRAN (R 4.5.0)
P tidyselect 1.2.1 2024-03-11 [?] CRAN (R 4.5.0)
P timechange 0.3.0 2024-01-18 [?] CRAN (R 4.5.0)
P timeDate 4041.110 2024-09-22 [?] CRAN (R 4.5.0)
P urlchecker 1.0.1 2021-11-30 [?] CRAN (R 4.5.0)
P usethis 3.1.0 2024-11-26 [?] CRAN (R 4.5.0)
P vctrs 0.6.5 2023-12-01 [?] CRAN (R 4.5.0)
P withr 3.0.2 2024-10-28 [?] CRAN (R 4.5.0)
P xfun 0.52 2025-04-02 [?] CRAN (R 4.5.0)
P xtable 1.8-4 2019-04-21 [?] CRAN (R 4.5.0)
P yaml 2.3.10 2024-07-26 [?] CRAN (R 4.5.0)

[1] /home/zenofl01/.cache/R/renv/library/cpepe-app-d912f9eb/linux-ubuntu-noble/R-4.5/x86_64-pc-linux-gnu
[2] /home/zenofl01/.cache/R/renv/sandbox/linux-ubuntu-noble/R-4.5/x86_64-pc-linux-gnu/9a444a72

  • ── Packages attached to the search path.
    P ── Loaded and on-disk path mismatch.
    R ── Package was removed from disk.

Contributor guide

No contributing guide indexed for this repository

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

Start by reproducing the provided page_navbar(), nav_menu(), and nav_panel() example, then inspect the Bootstrap .dropdown-menu z-index styling and its --bs-dropdown-zindex value. Done means the sidebar toggle arrow is hidden whenever the dropdown menu is open without requiring application-level custom CSS.

Written by the indexing model from the issue text.

Assessment

Tech stack
bootstrap, scss
Domain
frontend
Issue type
Bug
Difficulty
2/5
Estimated time
1-3 hours
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.