Skip to content

Commit 082efa3

Browse files
crisbetoandrewseguin
authored andcommitted
fix(select): multi-select checkbox not having an outline in high contrast mode (#11667)
Reworks the pseudo checkbox not to remove its border when it becomes checked. This has the advantage of not removing the checkbox outline in high contrast mode.
1 parent ff78ade commit 082efa3

File tree

1 file changed

+6
-5
lines changed

1 file changed

+6
-5
lines changed

src/lib/core/selection/pseudo-checkbox/pseudo-checkbox.scss

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ $_mat-pseudo-checkmark-size: $mat-checkbox-size - (2 * $_mat-pseudo-checkbox-pad
3232
}
3333

3434
&.mat-pseudo-checkbox-checked, &.mat-pseudo-checkbox-indeterminate {
35-
border: none;
35+
border-color: transparent;
3636
}
3737
}
3838

@@ -41,15 +41,16 @@ $_mat-pseudo-checkmark-size: $mat-checkbox-size - (2 * $_mat-pseudo-checkbox-pad
4141
}
4242

4343
.mat-pseudo-checkbox-indeterminate::after {
44-
top: ($mat-checkbox-size - $mat-checkbox-border-width) / 2;
45-
left: $mat-checkbox-border-width;
44+
top: ($mat-checkbox-size - $mat-checkbox-border-width) / 2 - $mat-checkbox-border-width;
45+
left: 0;
4646
width: $mat-checkbox-size - ($mat-checkbox-border-width * 2);
4747
opacity: 1;
4848
}
4949

5050
.mat-pseudo-checkbox-checked::after {
51-
top: ($mat-checkbox-size / 2) - ($_mat-pseudo-checkmark-size / 4) - ($mat-checkbox-size / 10);
52-
left: $_mat-pseudo-checkbox-padding - $mat-checkbox-border-width / 2;
51+
top: ($mat-checkbox-size / 2) - ($_mat-pseudo-checkmark-size / 4) -
52+
($mat-checkbox-size / 10) - $mat-checkbox-border-width;
53+
left: $_mat-pseudo-checkbox-padding - $mat-checkbox-border-width * 1.5;
5354
width: $_mat-pseudo-checkmark-size;
5455
height: ($_mat-pseudo-checkmark-size - $mat-checkbox-border-width) / 2;
5556
border-left: $mat-checkbox-border-width solid currentColor;

0 commit comments

Comments
 (0)