fix(button): use clamp for font sizes on circle shape (#29200)
@ -149,7 +149,20 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
::slotted(ion-icon[slot="icon-only"]) {
|
::slotted(ion-icon[slot="icon-only"]) {
|
||||||
font-size: 1.125em;
|
/**
|
||||||
|
* The values were provided through a native iOS app.
|
||||||
|
* min font size: 15px, default font size: 18px, max font size: 43px
|
||||||
|
*
|
||||||
|
* Since the `ion-button` uses `rem` for the font size, we can't
|
||||||
|
* just pass the desired icon font size in `em` to the `
|
||||||
|
* dynamic-font-clamp`. Instead, we need to adjust the base size
|
||||||
|
* to account for the ion-button` font size.
|
||||||
|
*
|
||||||
|
* For example, if the default font size of `ion-button` is 16px
|
||||||
|
* (derived from rem), then the base size can use the default font
|
||||||
|
* size of the icon.
|
||||||
|
*/
|
||||||
|
font-size: dynamic-font-clamp(0.84, 18px, 2.39, 1em);
|
||||||
}
|
}
|
||||||
|
|
||||||
:host(.button-small.button-has-icon-only) {
|
:host(.button-small.button-has-icon-only) {
|
||||||
@ -157,11 +170,23 @@
|
|||||||
min-width: clamp(23px, 2.16em, 54px);
|
min-width: clamp(23px, 2.16em, 54px);
|
||||||
// TODO(FW-6053): replace em value with the min-height variable.
|
// TODO(FW-6053): replace em value with the min-height variable.
|
||||||
min-height: clamp(23px, 2.16em, 54px);
|
min-height: clamp(23px, 2.16em, 54px);
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
:host(.button-small) ::slotted(ion-icon[slot="icon-only"]) {
|
:host(.button-small) ::slotted(ion-icon[slot="icon-only"]) {
|
||||||
font-size: 1.4em;
|
/**
|
||||||
|
* The values were provided through a native iOS app.
|
||||||
|
* min font size: 12px, default font size: 17px, max font size: 40px
|
||||||
|
*
|
||||||
|
* Since the `ion-button` uses `rem` for the font size, we can't
|
||||||
|
* just pass the desired icon font size in `em` to the `
|
||||||
|
* dynamic-font-clamp`. Instead, we need to adjust the base size
|
||||||
|
* to account for the ion-button` font size.
|
||||||
|
*
|
||||||
|
* For example, if the default font size of `ion-button` is 13px
|
||||||
|
* (derived from rem) and the default font size of the icon is
|
||||||
|
* 17px, then the base size would need to be increased.
|
||||||
|
*/
|
||||||
|
font-size: dynamic-font-clamp(0.58, 20.93px, 1.92, 1em);
|
||||||
}
|
}
|
||||||
|
|
||||||
:host(.button-large.button-has-icon-only) {
|
:host(.button-large.button-has-icon-only) {
|
||||||
@ -172,7 +197,20 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
:host(.button-large) ::slotted(ion-icon[slot="icon-only"]) {
|
:host(.button-large) ::slotted(ion-icon[slot="icon-only"]) {
|
||||||
font-size: 1em;
|
/**
|
||||||
|
* The values were provided through a native iOS app.
|
||||||
|
* min font size: 15px, default font size: 18px, max font size: 43px
|
||||||
|
*
|
||||||
|
* Since the `ion-button` uses `rem` for the font size, we can't
|
||||||
|
* just pass the desired icon font size in `em` to the `
|
||||||
|
* dynamic-font-clamp`. Instead, we need to adjust the base size
|
||||||
|
* to account for the ion-button` font size.
|
||||||
|
*
|
||||||
|
* For example, if the default font size of `ion-button` is 20px
|
||||||
|
* (derived from rem) and the default font size of the icon is
|
||||||
|
* 18px, then the base size would need to be decreased.
|
||||||
|
*/
|
||||||
|
font-size: dynamic-font-clamp(1.05, 14.4px, 2.99, 1em);
|
||||||
}
|
}
|
||||||
|
|
||||||
// iOS Button Focused
|
// iOS Button Focused
|
||||||
|
|||||||
@ -142,7 +142,21 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
::slotted(ion-icon[slot="icon-only"]) {
|
::slotted(ion-icon[slot="icon-only"]) {
|
||||||
font-size: 1.6em;
|
/**
|
||||||
|
* The values were provided through MD design,
|
||||||
|
* large and small are based on the iOS sizes.
|
||||||
|
* min font size: 15px, default font size: 22.4px, max font size: 43px
|
||||||
|
*
|
||||||
|
* Since the `ion-button` uses `rem` for the font size, we can't
|
||||||
|
* just pass the desired icon font size in `em` to the `
|
||||||
|
* dynamic-font-clamp`. Instead, we need to adjust the base size
|
||||||
|
* to account for the ion-button` font size.
|
||||||
|
*
|
||||||
|
* For example, if the default font size of `ion-button` is 14px
|
||||||
|
* (derived from rem) and the default font size of the icon is
|
||||||
|
* 22.4px, then the base size would need to be increased.
|
||||||
|
*/
|
||||||
|
font-size: dynamic-font-clamp(0.59, 25.6px, 1.68, 1em);
|
||||||
}
|
}
|
||||||
|
|
||||||
:host(.button-small.button-has-icon-only) {
|
:host(.button-small.button-has-icon-only) {
|
||||||
@ -153,7 +167,21 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
:host(.button-small) ::slotted(ion-icon[slot="icon-only"]) {
|
:host(.button-small) ::slotted(ion-icon[slot="icon-only"]) {
|
||||||
font-size: 1.23em;
|
/**
|
||||||
|
* The values were provided through MD design,
|
||||||
|
* large and small are based on the iOS sizes.
|
||||||
|
* min font size: 12px, default font size: 16px, max font size: 40px
|
||||||
|
*
|
||||||
|
* Since the `ion-button` uses `rem` for the font size, we can't
|
||||||
|
* just pass the desired icon font size in `em` to the `
|
||||||
|
* dynamic-font-clamp`. Instead, we need to adjust the base size
|
||||||
|
* to account for the ion-button` font size.
|
||||||
|
*
|
||||||
|
* For example, if the default font size of `ion-button` is 13px
|
||||||
|
* (derived from rem) and the default font size of the icon is
|
||||||
|
* 16px, then the base size would need to be increased.
|
||||||
|
*/
|
||||||
|
font-size: dynamic-font-clamp(0.66, 19.7px, 2.05, 1em);
|
||||||
}
|
}
|
||||||
|
|
||||||
:host(.button-large.button-has-icon-only) {
|
:host(.button-large.button-has-icon-only) {
|
||||||
@ -164,7 +192,21 @@
|
|||||||
}
|
}
|
||||||
|
|
||||||
:host(.button-large) ::slotted(ion-icon[slot="icon-only"]) {
|
:host(.button-large) ::slotted(ion-icon[slot="icon-only"]) {
|
||||||
font-size: 1.4em;
|
/**
|
||||||
|
* The values were provided through MD design,
|
||||||
|
* large and small are based on the iOS sizes.
|
||||||
|
* min font size: 15px, default font size: 28px, max font size: 43px
|
||||||
|
*
|
||||||
|
* Since the `ion-button` uses `rem` for the font size, we can't
|
||||||
|
* just pass the desired icon font size in `em` to the `
|
||||||
|
* dynamic-font-clamp`. Instead, we need to adjust the base size
|
||||||
|
* to account for the ion-button` font size.
|
||||||
|
*
|
||||||
|
* For example, if the default font size of `ion-button` is 20px
|
||||||
|
* (derived from rem) and the default font size of the icon is
|
||||||
|
* 28px, then the base size would need to be increased.
|
||||||
|
*/
|
||||||
|
font-size: dynamic-font-clamp(0.67, 22.4px, 1.92, 1em);
|
||||||
}
|
}
|
||||||
|
|
||||||
// Material Design Button: Hover
|
// Material Design Button: Hover
|
||||||
|
|||||||
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 29 KiB After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 27 KiB After Width: | Height: | Size: 27 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 45 KiB After Width: | Height: | Size: 43 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 30 KiB After Width: | Height: | Size: 30 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 44 KiB |
|
Before Width: | Height: | Size: 28 KiB After Width: | Height: | Size: 28 KiB |
|
Before Width: | Height: | Size: 8.0 KiB After Width: | Height: | Size: 7.9 KiB |
|
Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 9.3 KiB |
|
Before Width: | Height: | Size: 7.3 KiB After Width: | Height: | Size: 7.2 KiB |
|
Before Width: | Height: | Size: 8.6 KiB After Width: | Height: | Size: 8.6 KiB |
|
Before Width: | Height: | Size: 9.6 KiB After Width: | Height: | Size: 9.6 KiB |
|
Before Width: | Height: | Size: 8.1 KiB After Width: | Height: | Size: 8.1 KiB |
|
Before Width: | Height: | Size: 11 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 11 KiB |
|
Before Width: | Height: | Size: 10 KiB After Width: | Height: | Size: 10 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 9.3 KiB After Width: | Height: | Size: 9.0 KiB |
|
Before Width: | Height: | Size: 9.8 KiB After Width: | Height: | Size: 9.5 KiB |
|
Before Width: | Height: | Size: 8.5 KiB After Width: | Height: | Size: 8.3 KiB |
|
Before Width: | Height: | Size: 13 KiB After Width: | Height: | Size: 13 KiB |
|
Before Width: | Height: | Size: 16 KiB After Width: | Height: | Size: 15 KiB |
|
Before Width: | Height: | Size: 12 KiB After Width: | Height: | Size: 12 KiB |
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 73 KiB After Width: | Height: | Size: 73 KiB |
|
Before Width: | Height: | Size: 84 KiB After Width: | Height: | Size: 84 KiB |
|
Before Width: | Height: | Size: 66 KiB After Width: | Height: | Size: 66 KiB |
|
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
|
Before Width: | Height: | Size: 69 KiB After Width: | Height: | Size: 69 KiB |
|
Before Width: | Height: | Size: 81 KiB After Width: | Height: | Size: 81 KiB |
|
Before Width: | Height: | Size: 59 KiB After Width: | Height: | Size: 59 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 42 KiB After Width: | Height: | Size: 42 KiB |
|
Before Width: | Height: | Size: 46 KiB After Width: | Height: | Size: 46 KiB |
|
Before Width: | Height: | Size: 56 KiB After Width: | Height: | Size: 56 KiB |
|
Before Width: | Height: | Size: 41 KiB After Width: | Height: | Size: 41 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 48 KiB After Width: | Height: | Size: 48 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |
|
Before Width: | Height: | Size: 40 KiB After Width: | Height: | Size: 40 KiB |
|
Before Width: | Height: | Size: 49 KiB After Width: | Height: | Size: 49 KiB |
|
Before Width: | Height: | Size: 34 KiB After Width: | Height: | Size: 34 KiB |