angular / angular/components

bug(mat-button-toggle): mat-button-toggle is 2px too tall

Open
#30,405 0 comments 0 reactions 0 assignees View on GitHub
area: material/button-toggle P4
Dominant language
TypeScript
Stars
25k
Forks
6.8k
Avg merge
1d 8h
Merged PRs (30d)
91

Description

### Is this a regression?

- [ ] Yes, this behavior used to work in the previous version

### The previous version in which this bug was not present was

_No response_

### Description

A `mat-button-toggle` is 2px taller than a `mat-stroked-button` despite both `--mat-standard-button-toggle-height` and `--mdc-outlined-button-container-height` both defaulting to 40px.

![Image](https://github.com/user-attachments/assets/fa897af5-2db7-46d0-8e65-c4531a46404b)
(this screenshot is at 2x zoom; each grid square is 2px)

### Reproduction

StackBlitz link: https://stackblitz.com/edit/components-issue-starter-bqkpddq3?file=src%2Fmain.ts

### Expected Behavior

`mat-stroked-button` and `mat-button-toggle` have the same height

### Actual Behavior

`mat-button-toggle` is 2px taller than `mat-stroked-button`

### Environment

```
> ng version

_ _ ____ _ ___
/ \ _ __ __ _ _ _| | __ _ _ __ / ___| | |_ _|
/ △ \ | '_ \ / _` | | | | |/ _` | '__| | | | | | |
/ ___ \| | | | (_| | |_| | | (_| | | | |___| |___ | |
/_/ \_\_| |_|\__, |\__,_|_|\__,_|_| \____|_____|___|
|___/

Angular CLI: 18.2.8
Node: 18.20.3
Package Manager: npm 10.2.3
OS: linux x64

Angular: 18.2.8
... animations, cdk, cli, common, compiler, compiler-cli, core
... forms, material, platform-browser, router

Package Version
---------------------------------------------------------
@angular-devkit/architect 0.1802.9
@angular-devkit/build-angular 18.2.9
@angular-devkit/core 18.2.9
@angular-devkit/schematics 18.2.8
@schematics/angular 18.2.8
rxjs 7.8.1
typescript 5.5.4
zone.js 0.14.10
```

Contributor guide

Open the contributing guide

Research direction

Start with the StackBlitz reproduction in src/main.ts and compare mat-button-toggle with mat-stroked-button at the reported Angular versions. Trace the two components' rendered heights and verify the fix by confirming both controls have the same height as shown in the reproduction.

Written by the indexing model from the issue text.

Assessment

Tech stack
angular, typescript
Domain
frontend
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
45/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.