mirror of
https://gerrit.wikimedia.org/r/mediawiki/skins/Vector.git
synced 2024-12-04 12:09:30 +00:00
5852e320a3
Creates a new skins.vector.zebra.styles module that will hold style modifications for the Vector Zebra update. Affected files are copied from skins.vector.styles without modification (at this point) to improve revision history in git. The new module should compile without error and existing styles should not be affected. Bug: T332600 Change-Id: I9b367ca0a0afea32b49915b40bc03c05910d4227
161 lines
4.1 KiB
Plaintext
161 lines
4.1 KiB
Plaintext
@import '../../../common/variables.less';
|
|
@import '../../../common/mixins.less';
|
|
|
|
@selector-nojs-collapsed-toc-open: ~'#vector-toc-collapsed-checkbox:checked';
|
|
|
|
// TOC dropdown styles
|
|
#vector-toc-collapsed-button,
|
|
.vector-sticky-header-toc,
|
|
.vector-page-titlebar-toc {
|
|
display: none;
|
|
margin-right: 8px;
|
|
}
|
|
|
|
// TOC dropdown toggle styles
|
|
#vector-toc-collapsed-button,
|
|
body:not( .vector-below-page-title ) #vector-page-titlebar-toc-label {
|
|
@media ( max-width: @max-width-tablet ) {
|
|
// Override the default button styles so the ToC button in the page titlebar is slightly shorter on small viewports
|
|
padding: 7px 12px;
|
|
}
|
|
}
|
|
|
|
// TOC styles when unpinned
|
|
.mixin-toc-unpinned() {
|
|
display: block;
|
|
|
|
> .vector-menu-content {
|
|
// Override default dropdown max width
|
|
max-width: none;
|
|
}
|
|
|
|
// Shared unpinned TOC styles, applies across all unpinned cases (page titlebar, sticky header, floating)
|
|
.vector-toc {
|
|
// T316056 Remove TOC menu fixed width and apply min/max-width
|
|
width: max-content;
|
|
min-width: 200px;
|
|
// Collapsed TOC should be smaller than 85% of the content container (51em) and 75vw
|
|
max-width: ~'min( 0.85 * @{max-width-content-container}, 75vw )'; // min( 51em, 75vw )
|
|
|
|
// Adjust TOC spacing when unpinned
|
|
.vector-pinnable-header {
|
|
padding-left: @padding-horizontal-dropdown-menu-item + @spacing-subsection-toggle;
|
|
}
|
|
|
|
.vector-toc-contents {
|
|
padding-right: @padding-horizontal-dropdown-menu-item;
|
|
padding-left: @padding-horizontal-dropdown-menu-item + @spacing-subsection-toggle;
|
|
}
|
|
}
|
|
}
|
|
|
|
// TOC styles when below page title
|
|
.mixin-toc-below-page-title {
|
|
position: fixed;
|
|
top: 12px;
|
|
left: 12px;
|
|
margin: 0;
|
|
z-index: @z-index-menu;
|
|
}
|
|
|
|
.client-js {
|
|
@media ( max-width: @max-width-tablet ) {
|
|
//
|
|
// TOC in page titlebar on narrow screens
|
|
//
|
|
.vector-page-titlebar-toc {
|
|
.mixin-toc-unpinned();
|
|
}
|
|
|
|
//
|
|
// TOC in page titlebar on narrow screens below page title
|
|
//
|
|
.vector-below-page-title .vector-page-titlebar-toc {
|
|
.mixin-toc-below-page-title();
|
|
}
|
|
}
|
|
|
|
@media ( min-width: @min-width-desktop ) {
|
|
//
|
|
// TOC in page titlebar
|
|
//
|
|
&.vector-feature-toc-pinned-disabled body:not( .vector-sticky-header-visible ) {
|
|
.vector-page-titlebar-toc {
|
|
.mixin-toc-unpinned();
|
|
}
|
|
}
|
|
|
|
//
|
|
// TOC in page titlebar below page title
|
|
//
|
|
&.vector-feature-toc-pinned-disabled body:not( .vector-sticky-header-visible ).vector-below-page-title {
|
|
.vector-page-titlebar-toc {
|
|
.mixin-toc-below-page-title();
|
|
}
|
|
}
|
|
|
|
//
|
|
// TOC in sticky header
|
|
//
|
|
&.vector-feature-toc-pinned-disabled .vector-sticky-header-visible {
|
|
.vector-sticky-header-toc {
|
|
.mixin-toc-unpinned();
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
.client-nojs {
|
|
//
|
|
// No-JS TOC in page titlebar
|
|
//
|
|
&.vector-feature-toc-pinned-disabled {
|
|
.vector-page-titlebar-toc {
|
|
.mixin-toc-unpinned();
|
|
}
|
|
}
|
|
|
|
//
|
|
// No-JS TOC in page titlebar on narrow screens for anon users
|
|
//
|
|
@media ( max-width: @max-width-tablet ) {
|
|
// Make the TOC appear in the page titlebar on small viewports
|
|
// even when the TOC location in the DOM is actually in the sidebar
|
|
// This case only happens for no-js anon users.
|
|
&.vector-feature-toc-pinned-enabled {
|
|
#vector-toc-collapsed-button {
|
|
display: block;
|
|
}
|
|
|
|
#vector-toc-pinned-container {
|
|
// Override TOC container's sticky positioning
|
|
position: relative;
|
|
.mixin-toc-unpinned();
|
|
}
|
|
|
|
.vector-toc {
|
|
display: none;
|
|
position: absolute;
|
|
top: 36px; // TOC button height
|
|
// FIXME: Don't use a magic number. This used to be tied to the private variable in core
|
|
// @icon-padding-md so perhaps this needs to make use of the flush classes?
|
|
left: -12px;
|
|
margin-top: @padding-top-content; // Account for padding-top from .mw-body
|
|
// FIXME: Collapsed TOC styles are not consistent with other vector dropdowns
|
|
border: @border-width-base @border-style-base @border-color-base;
|
|
z-index: @z-index-menu;
|
|
|
|
.vector-pinnable-header,
|
|
.vector-toc-contents {
|
|
padding-left: @padding-horizontal-dropdown-menu-item;
|
|
}
|
|
}
|
|
|
|
@{selector-nojs-collapsed-toc-open} ~ .mw-table-of-contents-container .vector-toc {
|
|
// Hide the TOC when the button is not checked
|
|
display: block;
|
|
}
|
|
}
|
|
}
|
|
}
|