ed-size .mdc-icon-button__ripple { width: 40px; height: 40px; margin-top: 4px; margin-bottom: 4px; margin-right: 4px; margin-left: 4px; } .mdc-icon-button.mdc-icon-button--reduced-size .mdc-icon-button__focus-ring { max-height: 40px; max-width: 40px; } .mdc-icon-button .mdc-icon-button__touch { position: absolute; top: 50%; height: 48px; /* @noflip */ /*rtl:ignore*/ left: 50%; width: 48px; /* @noflip */ /*rtl:ignore*/ transform: translate(-50%, -50%); } .mdc-icon-button:disabled { color: rgba(0, 0, 0, 0.38); /* @alternate */ color: var(--mdc-theme-text-disabled-on-light, rgba(0, 0, 0, 0.38)); } .mdc-icon-button svg, .mdc-icon-button img { width: 24px; height: 24px; } .mdc-icon-button { display: inline-block; position: relative; box-sizing: border-box; border: none; outline: none; background-color: transparent; fill: currentColor; color: inherit; text-decoration: none; cursor: pointer; user-select: none; z-index: 0; overflow: visible; } .mdc-icon-button .mdc-icon-button__touch { position: absolute; top: 50%; height: 48px; /* @noflip */ /*rtl:ignore*/ left: 50%; width: 48px; /* @noflip */ /*rtl:ignore*/ transform: translate(-50%, -50%); } @media screen and (forced-colors: active) { .mdc-icon-button.mdc-ripple-upgraded--background-focused .mdc-icon-button__focus-ring, .mdc-icon-button:not(.mdc-ripple-upgraded):focus .mdc-icon-button__focus-ring { display: block; } } .mdc-icon-button:disabled { cursor: default; pointer-events: none; } .mdc-icon-button[hidden] { display: none; } .mdc-icon-button--display-flex { align-items: center; display: inline-flex; justify-content: center; } .mdc-icon-button__focus-ring { pointer-events: none; border: 2px solid transparent; border-radius: 6px; box-sizing: content-box; position: absolute; top: 50%; /* @noflip */ /*rtl:ignore*/ left: 50%; /* @noflip */ /*rtl:ignore*/ transform: translate(-50%, -50%); height: 100%; width: 100%; display: none; } @media screen and (forced-colors: active) { .mdc-icon-button__focus-ring { border-color: CanvasText; } } .mdc-icon-button__focus-ring::after { content: ""; border: 2px solid transparent; border-radius: 8px; display: block; position: absolute; top: 50%; /* @noflip */ /*rtl:ignore*/ left: 50%; /* @noflip */ /*rtl:ignore*/ transform: translate(-50%, -50%); height: calc(100% + 4px); width: calc(100% + 4px); } @media screen and (forced-colors: active) { .mdc-icon-button__focus-ring::after { border-color: CanvasText; } } .mdc-icon-button__icon { display: inline-block; } .mdc-icon-button__icon.mdc-icon-button__icon--on { display: none; } .mdc-icon-button--on .mdc-icon-button__icon { display: none; } .mdc-icon-button--on .mdc-icon-button__icon.mdc-icon-button__icon--on { display: inline-block; } .mdc-icon-button__link { height: 100%; left: 0; outline: none; position: absolute; top: 0; width: 100%; } .mdc-icon-button { display: inline-block; position: relative; box-sizing: border-box; border: none; outline: none; background-color: transparent; fill: currentColor; color: inherit; text-decoration: none; cursor: pointer; user-select: none; z-index: 0; overflow: visible; } .mdc-icon-button .mdc-icon-button__touch { position: absolute; top: 50%; height: 48px; /* @noflip */ /*rtl:ignore*/ left: 50%; width: 48px; /* @noflip */ /*rtl:ignore*/ transform: translate(-50%, -50%); } @media screen and (forced-colors: active) { .mdc-icon-button.mdc-ripple-upgraded--background-focused .mdc-icon-button__focus-ring, .mdc-icon-button:not(.mdc-ripple-upgraded):focus .mdc-icon-button__focus-ring { display: block; } } .mdc-icon-button:disabled { cursor: default; pointer-events: none; } .mdc-icon-button[hidden] { display: none; } .mdc-icon-button--display-flex { align-items: center; display: inline-flex; justify-content: center; } .mdc-icon-button__focus-ring { pointer-events: none; border: 2px solid transparent; border-radius: 6px; box-sizing: content-box; position: absolute; top: 50%; /* @noflip */ /*rtl:ignore*/ left: 50%; /* @noflip */ /*rtl:ignore*/ transform: translate(-50%, -50%); height: 100%; width: 100%; display: none; } @media screen and (forced-colors: active) { .mdc-icon-button__focus-ring { border-color: CanvasText; } } .mdc-icon-button__focus-ring::after { content: ""; border: 2px solid transparent; border-radius: 8px; display: block; position: absolute; top: 50%; /* @noflip */ /*rtl:ignore*/ left: 50%; /* @noflip */ /*rtl:ignore*/ transform: translate(-50%, -50%); height: calc(100% + 4px); width: calc(100% + 4px); } @media screen and (forced-colors: active) { .mdc-icon-button__focus-ring::after { border-color: CanvasText; } } .mdc-icon-button__icon { display: inline-block; } .mdc-icon-button__icon.mdc-icon-button__icon--on { display: none; } .mdc-icon-button--on .mdc-icon-button__icon { display: none; } .mdc-icon-button--on .mdc-icon-button__icon.mdc-icon-button__icon--on { display: inline-block; } .mdc-icon-button__link { height: 100%; left: 0; outline: none; position: absolute; top: 0; width: 100%; } :host { display: inline-block; outline: none; } :host([disabled]) { pointer-events: none; } .mdc-icon-button i, .mdc-icon-button svg, .mdc-icon-button img, .mdc-icon-button ::slotted(*) { display: block; } :host { --mdc-ripple-color: currentcolor; -webkit-tap-highlight-color: transparent; } :host, .mdc-icon-button { /** * Any vertical-align other than the default of "baseline" will work here (and * "top" is the shortest). * * In general, when an inline-block element has vertical-align: baseline and * also a fixed height, extra space may "appear" below it. This is because the * baseline it is aligned to is not the very bottom of the line, it's the line * above the "descenders" (e.g. the tail of a "y" or "j"). This means the * container must grow to accomodate both the fixed height inline-element, and * the descender height below it. * * For unknown reasons, in this particular case, this only causes incorrect * alignment in IE. * * IE needs the vertical-align on both the button and the host element. */ vertical-align: top; } .mdc-icon-button { width: var(--mdc-icon-button-size, 48px); height: var(--mdc-icon-button-size, 48px); padding: calc((var(--mdc-icon-button-size, 48px) - var(--mdc-icon-size, 24px)) / 2); } .mdc-icon-button i, .mdc-icon-button svg, .mdc-icon-button img, .mdc-icon-button ::slotted(*) { display: block; width: var(--mdc-icon-size, 24px); height: var(--mdc-icon-size, 24px); }