Skip to content

[Tabs] ignores scroll-padding on its scroller when it scrolls the selected tab into view #49038

Description

@crispinc-omnea

Steps to reproduce

Steps:

  1. Open this link to live example: (required)
  2. Click on a partially hidden tab under the overlay - it doesn't fully scroll into view

Current behavior

Even if scroll-padding is defined on the tabs container, a clicked tab stops flush against the scroller edge, (e.g. under an overlaid button). scroll-padding has no effect

Expected behavior

The tab stops inside the scroll-padding, as element.scrollIntoView() would

Context

Scroll buttons overlaid on top of the Tabs, to enable 'disappearing' left / right scroll buttons

Your environment

npx @mui/envinfo
  System:
    OS: macOS 26.6
  Binaries:
    Node: 22.22.0 - /Users/crispin.c/.nvm/versions/node/v22.22.0/bin/node
    npm: 10.9.4 - /Users/crispin.c/dev/omnea/omnea-meta-repo/omnea-app/node_modules/.bin/npm
    pnpm: 11.10.0 - /Users/crispin.c/.nvm/versions/node/v22.22.0/bin/pnpm
  Browsers:
    Chrome: 151.0.7922.174
    Edge: Not Found
    Firefox: Not Found
    Safari: 26.6
  npmPackages:
    @emotion/react: ^11.13.3 => 11.13.3
    @emotion/styled: ^11.13.0 => 11.13.0
    @mui/core-downloads-tracker:  7.1.0
    @mui/icons-material: ^7.1.0 => 7.1.0
    @mui/material: ^7.1.0 => 7.1.0
    @mui/private-theming:  7.1.0
    @mui/styled-engine:  7.1.0
    @mui/system: ^7.1.0 => 7.1.0
    @mui/types:  7.4.4
    @mui/utils: ^7.2.0 => 7.2.0
    @mui/x-charts:  8.9.2
    @mui/x-charts-pro: ^8.9.2 => 8.9.2
    @mui/x-charts-vendor:  8.6.0
    @mui/x-data-grid:  7.26.0
    @mui/x-data-grid-premium: ^7.26.0 => 7.26.0
    @mui/x-data-grid-pro:  7.26.0
    @mui/x-date-pickers: ^7.26.0 => 7.29.3
    @mui/x-date-pickers-pro: ^7.0.0 => 7.29.3
    @mui/x-internal-gestures:  0.2.2
    @mui/x-internals:  7.26.0
    @mui/x-license: ^7.26.0 => 7.29.1
    @mui/x-telemetry:  8.5.3
    @mui/x-tree-view: ^7.26.0 => 7.29.10
    @types/react: ^19.1.11 => 19.1.11
    @typescript/typescript6:  6.0.2
    react: ^18.3.1 => 18.3.1
    react-dom: ^18.3.1 => 18.3.1
    styled-components: ^6.1.12 => 6.1.12

Search keywords: Tabs scroll-padding scrollSelectedIntoView scroll buttons overlap selected tab

Metadata

Metadata

Assignees

No one assigned

    Labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions