angular / angular/components

bug(mat-button-toggle): letter-spacing not the same as mat-button

Open
#26,575 2 comments 8 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?

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

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

14

### Description

The new `mat-button` use a `letter-spacing` which is calculated as `1.25px` with the default settings. To be more precise:

```
var(--mdc-typography-button-letter-spacing, .0892857143em)
```

whereas the variable `--mdc-typography-button-letter-spacing` is undefined.

For the toggle-button the letter-spacing is used from the `user agent stylesheet` which is set to `normal`.

### Reproduction

Steps to reproduce:
1. Inspect the HTML-code of https://material.angular.io/components/button-toggle/overview
2. https://material.angular.io/components/button/overview

### Expected Behavior

At least that the letter-spacing is consistent over the components.

Additionally I would have expected the same spacing for similar types.

According to the Material 3 specs there is no additional `letter-spacing` set: https://m3.material.io/components/buttons/specs

### Actual Behavior

Width is set `1.25px`

### Environment

Angular CLI: 15.1.3
Node: 19.5.0 (Unsupported)
Package Manager: npm 9.3.1
OS: linux x64

Angular: 15.1.2
... animations, cdk, common, compiler, compiler-cli, core, forms
... localize, material, material-moment-adapter
... platform-browser, platform-browser-dynamic, router

Package Version
---------------------------------------------------------
@angular-devkit/architect 0.1501.3
@angular-devkit/build-angular 15.1.3
@angular-devkit/core 15.1.3
@angular-devkit/schematics 15.1.3
@angular/cli 15.1.3
@schematics/angular 15.1.3
rxjs 7.8.0
typescript 4.9.5

Contributor guide

Open the contributing guide

Research direction

Compare the rendered styles on the button-toggle and button overview pages linked in the issue, then trace the corresponding Angular Material component styles. Confirm the intended letter-spacing against the reported behavior and Material 3 specification; done means the related components use consistent, verified spacing.

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
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.