/** * Redefinition of the mw-ui-icon class from MediaWiki-core. * * This module attempts to maintain compatibility with the * core mw-ui-icon module, while adding more mobile-friendly * features like increased touch-area sizes and highlights. * * - mw-ui-icon = base class. 20px square with icon. * - mw-ui-icon + mw-ui-icon-element = icon with padding & pseudo-states. * - mw-ui-icon + mw-ui-icon-small = small icon with padding & pseudo-states. * - mw-ui-icon + mw-ui-icon-flush-left = negative right-margin. * - mw-ui-icon + mw-ui-icon-flush-right = negative left-margin. * - mw-ui-icon + mw-ui-icon-before = *deprecated*, icon with text. * Labels should be placed in a separate element beside the icon. * */ @import '../../minerva.less/minerva.variables.less'; /** * Mixin for a pseudo-element with a background image. */ .mixin-background-square() { // sizing content: ''; display: block; width: 100%; height: 100%; // background background-repeat: no-repeat; background-size: contain; background-position: center; } /** * A standalone 20px square with screen-reader text. Contains a :before element * to house the icon as a background image. Total size is increased with padding via * `box-sizing: content-box`. This separates control over size of icon vs the size of * the touch-area. */ .mw-ui-icon { // reset font-size so the "em" value is relative to the more // predictable rem font size ...and no rems because we can't have nice things. font-size: initial; // sizing position: relative; display: inline-block; // this is important for increasing the size via padding. Overrides `.view-border-box *`. box-sizing: content-box !important; width: @icon-size-md; height: @icon-size-md; // alignment vertical-align: middle; line-height: 0; overflow: hidden; // resetting styles for