You cannot select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
278 lines
5.5 KiB
Plaintext
278 lines
5.5 KiB
Plaintext
3 years ago
|
@import 'variables-content.less';
|
||
|
|
||
|
/**
|
||
|
* Block media items
|
||
|
*/
|
||
|
|
||
|
figure[ typeof~='mw:File' ],
|
||
|
figure[ typeof~='mw:File/Frameless' ],
|
||
|
/* TODO: Remove "Image|Video|Audio" when version 2.4.0 of the content is no
|
||
|
* longer supported
|
||
|
*/
|
||
|
figure[ typeof~='mw:Image' ],
|
||
|
figure[ typeof~='mw:Video' ],
|
||
|
figure[ typeof~='mw:Audio' ],
|
||
|
figure[ typeof~='mw:Image/Frameless' ],
|
||
|
figure[ typeof~='mw:Video/Frameless' ],
|
||
|
figure[ typeof~='mw:Audio/Frameless' ] {
|
||
|
margin: 0; // Maybe belongs in element.css for figure
|
||
|
|
||
|
> a {
|
||
|
// The addition of the class is needed for higher specificity
|
||
|
// than Vector's print styles
|
||
|
.mw-body-content & {
|
||
|
border: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
&.mw-halign-right {
|
||
|
/* @noflip */
|
||
|
margin: @margin-floatright;
|
||
|
/* @noflip */
|
||
|
clear: right;
|
||
|
/* @noflip */
|
||
|
float: right;
|
||
|
}
|
||
|
|
||
|
&.mw-halign-left {
|
||
|
/* @noflip */
|
||
|
margin: @margin-floatleft;
|
||
|
/* @noflip */
|
||
|
clear: left;
|
||
|
/* @noflip */
|
||
|
float: left;
|
||
|
}
|
||
|
|
||
|
&.mw-halign-none {
|
||
|
clear: none;
|
||
|
float: none;
|
||
|
}
|
||
|
|
||
|
&.mw-halign-center {
|
||
|
/* Matches *.center * in element.css */
|
||
|
margin: 0 auto;
|
||
|
display: table;
|
||
|
border-collapse: collapse;
|
||
|
clear: none;
|
||
|
float: none;
|
||
|
}
|
||
|
|
||
|
/* Hide the caption for frameless and plain floated images */
|
||
|
> figcaption {
|
||
|
display: none;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
figure[ typeof~='mw:File/Thumb' ],
|
||
|
figure[ typeof~='mw:File/Frame' ],
|
||
|
/* TODO: Remove "Image|Video|Audio" when version 2.4.0 of the content is no
|
||
|
* longer supported
|
||
|
*/
|
||
|
figure[ typeof~='mw:Image/Thumb' ],
|
||
|
figure[ typeof~='mw:Video/Thumb' ],
|
||
|
figure[ typeof~='mw:Audio/Thumb' ],
|
||
|
figure[ typeof~='mw:Image/Frame' ],
|
||
|
figure[ typeof~='mw:Video/Frame' ],
|
||
|
figure[ typeof~='mw:Audio/Frame' ] {
|
||
|
margin: 0; // Maybe belongs in element.css for figure
|
||
|
margin-bottom: @margin-bottom-thumb;
|
||
|
display: table;
|
||
|
text-align: center;
|
||
|
border-collapse: collapse;
|
||
|
|
||
|
> a {
|
||
|
// The addition of the class is needed for higher specificity
|
||
|
// than Vector's print styles
|
||
|
.mw-body-content & {
|
||
|
border: 0;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
// Defaults for page content language
|
||
|
|
||
|
.mw-content-ltr & {
|
||
|
/* @noflip */
|
||
|
margin: @margin-tright;
|
||
|
/* @noflip */
|
||
|
clear: right;
|
||
|
/* @noflip */
|
||
|
float: right;
|
||
|
}
|
||
|
|
||
|
.mw-content-rtl & {
|
||
|
/* @noflip */
|
||
|
margin: @margin-tleft;
|
||
|
/* @noflip */
|
||
|
clear: left;
|
||
|
/* @noflip */
|
||
|
float: left;
|
||
|
}
|
||
|
|
||
|
// Override defaults when explicitly set
|
||
|
// Order of application is important, so don't combine with the defaults
|
||
|
|
||
|
&.mw-halign-right {
|
||
|
/* @noflip */
|
||
|
margin: @margin-tright;
|
||
|
/* @noflip */
|
||
|
clear: right;
|
||
|
/* @noflip */
|
||
|
float: right;
|
||
|
}
|
||
|
|
||
|
&.mw-halign-left {
|
||
|
/* @noflip */
|
||
|
margin: @margin-tleft;
|
||
|
/* @noflip */
|
||
|
clear: left;
|
||
|
/* @noflip */
|
||
|
float: left;
|
||
|
}
|
||
|
|
||
|
&.mw-halign-none {
|
||
|
/* Override the default margin from mw-content-xxx above */
|
||
|
margin: 0;
|
||
|
margin-bottom: @margin-bottom-thumb;
|
||
|
clear: none;
|
||
|
float: none;
|
||
|
}
|
||
|
|
||
|
&.mw-halign-center {
|
||
|
/* Override the default margin from mw-content-xxx above
|
||
|
* And, matches *.center * in element.css
|
||
|
*/
|
||
|
margin: 0 auto @margin-bottom-thumb auto;
|
||
|
clear: none;
|
||
|
float: none;
|
||
|
}
|
||
|
|
||
|
> *:first-child {
|
||
|
> audio,
|
||
|
> img,
|
||
|
> video {
|
||
|
margin: 0.75em;
|
||
|
margin-bottom: 0.5em;
|
||
|
}
|
||
|
/**
|
||
|
* Broken media get a span instead.
|
||
|
*
|
||
|
* FIXME: The `> span:first-child` can be removed when version 2.4.0
|
||
|
* of the content is no longer supported
|
||
|
*/
|
||
|
> span:first-child,
|
||
|
> span.mw-broken-media {
|
||
|
display: inline-block;
|
||
|
margin: 0.75em;
|
||
|
margin-bottom: 0.5em;
|
||
|
/* This is hardcoded in Linker::makeThumbLink2 for broken media */
|
||
|
width: 180px;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
> figcaption {
|
||
|
display: table-caption;
|
||
|
caption-side: bottom;
|
||
|
line-height: @line-height-thumbcaption;
|
||
|
min-height: 1em;
|
||
|
|
||
|
/**
|
||
|
* The "break-word" value is deprecated, however, it's well supported
|
||
|
* at 94.73%
|
||
|
* https://caniuse.com/mdn-css_properties_word-break_break-word
|
||
|
*
|
||
|
* The spec suggests it has the same effect as,
|
||
|
*
|
||
|
* word-break: normal;
|
||
|
* overflow-wrap: anywhere;
|
||
|
*
|
||
|
* https://drafts.csswg.org/css-text-3/#word-break-property
|
||
|
*
|
||
|
* So, we should use that. However, support for "anywhere" is lagging
|
||
|
* at just 72.39%, with Safari being a notable miss.
|
||
|
* https://caniuse.com/mdn-css_properties_overflow-wrap_anywhere
|
||
|
*
|
||
|
* "Soft wrap opportunities introduced by the word break are considered
|
||
|
* when calculating min-content intrinsic sizes."
|
||
|
* From https://developer.mozilla.org/en-US/docs/Web/CSS/overflow-wrap
|
||
|
*/
|
||
|
word-break: break-word;
|
||
|
|
||
|
.mw-content-ltr & {
|
||
|
/* @noflip */
|
||
|
text-align: left;
|
||
|
}
|
||
|
|
||
|
.mw-content-rtl & {
|
||
|
/* @noflip */
|
||
|
text-align: right;
|
||
|
}
|
||
|
|
||
|
/* taken from .thumbcaption, plus .thumbinner */
|
||
|
padding: 0 0.75em 0.75em 0.75em;
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/**
|
||
|
* Inline media items
|
||
|
*/
|
||
|
*:first-child {
|
||
|
> audio,
|
||
|
> img,
|
||
|
> video {
|
||
|
.mw-valign-middle > & {
|
||
|
vertical-align: middle;
|
||
|
}
|
||
|
|
||
|
.mw-valign-baseline > & {
|
||
|
vertical-align: baseline;
|
||
|
}
|
||
|
|
||
|
.mw-valign-sub > & {
|
||
|
vertical-align: sub;
|
||
|
}
|
||
|
|
||
|
.mw-valign-super > & {
|
||
|
vertical-align: super;
|
||
|
}
|
||
|
|
||
|
.mw-valign-top > & {
|
||
|
vertical-align: top;
|
||
|
}
|
||
|
|
||
|
.mw-valign-text-top > & {
|
||
|
vertical-align: text-top;
|
||
|
}
|
||
|
|
||
|
.mw-valign-bottom > & {
|
||
|
vertical-align: bottom;
|
||
|
}
|
||
|
|
||
|
.mw-valign-text-bottom > & {
|
||
|
vertical-align: text-bottom;
|
||
|
}
|
||
|
}
|
||
|
}
|
||
|
|
||
|
/* stylelint-disable selector-class-pattern */
|
||
|
|
||
|
/**
|
||
|
* Avoid the need to calculate paddings individually
|
||
|
* https://stackoverflow.com/a/7310398
|
||
|
*
|
||
|
* FIXME: This would be better in mediawiki.page.gallery.styles,
|
||
|
* but let's wait until wgParserEnableLegacyMediaDOM is removed
|
||
|
*/
|
||
|
.mw-gallery-traditional .gallerybox > .thumb {
|
||
|
&:before {
|
||
|
content: '';
|
||
|
vertical-align: middle;
|
||
|
display: inline-block;
|
||
|
height: 100%;
|
||
|
}
|
||
|
|
||
|
> * {
|
||
|
vertical-align: middle;
|
||
|
display: inline-block;
|
||
|
}
|
||
|
}
|