mediawiki-skins-MinervaNeue/minerva.less/minerva.variables.less
AntiCompositeNumber fae41df135 minerva.less: use rem instead of em for browser-relative font sizes
em values are calculated relative to the parent element's font-size, not
the root or browser-default font-size. However, @font-size-minerva-small
and @font-size-minerva-smallest are supposed to be relative to the
assumed 16px browser default font-size. If they are used in an element
that already has a smaller-than-100% font-size, the resulting font-sizes
will compound and can be smaller than accessability minimums. This change
uses rems instead, so -small and -smallest will be the same sizes
everywhere on the page.

If -small or -smallest were used anywhere where parent-relative font
sizing is expected, this patch will change the size of that text. This
is only a problem if the new size is smaller than the old size, as any
sizes smaller than -smallest are an accessability issue. I looked for
any potential problems, but didn't see any.

Bug: T282315
Change-Id: Ib578f2cc4597b4dbfb5d1f5e4842962433af3748
2021-08-16 15:25:18 -05:00

162 lines
5 KiB
Plaintext
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

@import 'mediawiki.ui/variables';
@import 'mediawiki.skin.variables.less';
/**
* System font stack for sans-serif fonts
*
* `-apple-system` ('San Francisco') Support: Safari 9+ macOS and iOS, Firefox macOS
* `BlinkMacSystemFont` ('San Francisco') Chrome 48+ macOS and iOS
* `Segoe UI` Windows Vista & newer
* `Roboto` Android 4.0
* `Lato` Wikimedia Design choice, OFL licensed
* `Helvetica, Arial, sans-serif` (Generic) Web fallback
* Note that CSS Fonts Module Level 4's `system-ui` value has resulted in unresolved
* side-effects in certain OS/language combinations and is therefore not included as of now.
*/
@font-family-system-sans: -apple-system, 'BlinkMacSystemFont', 'Segoe UI', 'Roboto', 'Lato', 'Helvetica', 'Arial', sans-serif;
@font-family-base: @font-family-system-sans;
@font-size-browser: 16; // Assumed browser default of `16px`.
@font-size-root: 100%;
@font-size-root--feature-phone: 0.8 * @font-size-root;
// T282315: Use rem instead of em to avoid font-size compounding, resulting in smaller than intended text
@font-size-minerva-small: unit( 14 / @font-size-browser, rem ); // Equals `14px` at `16px` browser default.
@font-size-minerva-smallest: unit( 13 / @font-size-browser, rem ); // Equals `13px` at `16px` browser default.
// colors
@grayMediumLight: @colorGray10;
@grayMediumDark: @colorGray5;
@grayMedium: @colorGray7;
@grayLight: @colorGray12;
@grayLightest: @colorGray14;
@background-color-primary: @wmui-color-accent90;
@grayDrawerShadow: rgba( 0, 0, 0, 0.35 );
/*
* FIXME: Use these variables directly from wikimedia-ui-base when available.
*/
@wmui-color-accent90: #eaf3ff;
@wmui-color-green30: #14866d;
@wmui-color-red30: #b32424;
@wmui-color-grey30: #a2a9b1;
//
// Icons
//
@icon-touch-area-sm: 34;
@icon-touch-area-md: 44;
@icon-color: @colorGray5;
// Small icon
@icon-glyph-size-sm: 16;
@icon-size-sm: unit( @icon-glyph-size-sm / @font-size-browser, em );
@icon-padding-sm: unit( ( @icon-touch-area-sm - @icon-glyph-size-sm ) / 2 / @font-size-browser, em );
// Medium icon
@icon-glyph-size-md: 20;
@icon-size-md: unit( @icon-glyph-size-md / @font-size-browser, em );
@icon-padding-md: unit( ( @icon-touch-area-md - @icon-glyph-size-md ) / 2 / @font-size-browser, em );
@margin-icon-md-labelled: 8px;
// Navigation Drawers
@rightDrawerWidth: 60%;
@primaryNavBackgroundColor: @colorGray14;
@menuButtonIconSize: 3.5em;
// Headings
@fontSizeH1: 1.7em;
@fontSizeH2: 1.5em;
@fontSizeH3: 1.2em;
// Content
@contentPadding: 16px;
@contentMargin: 16px;
// Header
@siteHeaderHeight: unit( 54 / @font-size-browser, em );
@overlayHeaderHeight: unit( 48 / @font-size-browser, em );
@headerVerticalPadding: 0.15em;
@headerMarginTop: -1px; // used to hide the header border top when a banner is not present
@searchBoxWidth: 375/16em;
@deviceWidthTabletEms: unit( @width-breakpoint-tablet / @font-size-browser, em );
@brandingBoxWidth: @deviceWidthTabletEms - (3 * @menuButtonIconSize + @iconGutterWidth) - @searchBoxWidth;
@titleSectionSpacingTop: 20px;
// Page actions
@taglineFontSize: 0.85em;
@pageActionBorder: 1px;
// colors
@chromeColor: @grayLightest;
@semiTransparent: rgba( 0, 0, 0, 0.8 );
@color-link: @colorProgressive;
@color-link--new: @colorError;
@lastModifiedBarActiveBackgroundColor: #00af89;
@toastNotificationColor: @colorGray2;
// Typography
@font-family-serif: 'Linux Libertine', 'Georgia', 'Times', serif;
/**
* System font stack for monospace fonts, see T221043.
*
* `Menlo` macOS 10.6+
* `Consolas` Windows Vista & newer
* `Liberation Mono` Fedora, Ubuntu, … OFL licensed
* `Courier New` (Generic) web font fallback
*/
@font-family-monospace: 'Menlo', 'Consolas', 'Liberation Mono', 'Courier New', monospace;
@line-height-content: 1.65;
@headingMargin: 0.5em;
// blockquote
@padding-start-blockquote: 32px;
// Make it a tad smaller on mobile to fit more contents.
@padding-end-blockquote: 24px;
@padding-vertical-blockquote: 8px;
// custom tablet styling
@contentPaddingTablet: 3.35em;
// note since content does not use view border box we have to include padding.
@contentMaxWidthTablet: @width-breakpoint-desktop - ( 2 * @contentPaddingTablet );
// Wiki specific variables
@infoboxWidth: 320px;
@lastModifiedBarBgColor: @chromeColor;
@lastModifiedBarTextColor: @colorTextLight;
@footerBorderColor: @grayLight;
@notificationBackgroundRead: @colorGray14;
@notificationColorRead: @colorGray5;
@notificationBackgroundUnread: @colorDestructive;
@notificationColorUnread: #fff;
// Opacity
@opacity-icon-base: 0.87; // = `#222` on `background-color: #fff`, closest to `#202122`
@opacity-icon-subtle: 0.66; // = `#565656 on `background-color: #fff`, closest to `#54595d`
// z-index:
@z-indexOccluded: -1;
@z-indexBase: 0;
@z-indexAboveContent: 1;
@z-indexDrawer: 2;
@z-indexOverlay: 3;
@z-indexOverOverlay: 4;
// Print specific
@colorPrintSubtle: #999;
@borderColorPrint: #999;
// Animations & Transitions
// Transitions
@transition-base: @transition-duration-base; // `ease` is the initial value.
// Transitions > Durations
@transition-duration-base: 100ms;
@transition-duration-medium: 250ms;
@transition-timing-function-menu: ease-in-out;