summaryrefslogtreecommitdiff
path: root/www/wiki/skins/Vector/components/tabs.less
diff options
context:
space:
mode:
Diffstat (limited to 'www/wiki/skins/Vector/components/tabs.less')
-rw-r--r--www/wiki/skins/Vector/components/tabs.less299
1 files changed, 299 insertions, 0 deletions
diff --git a/www/wiki/skins/Vector/components/tabs.less b/www/wiki/skins/Vector/components/tabs.less
new file mode 100644
index 00000000..ea5d82cd
--- /dev/null
+++ b/www/wiki/skins/Vector/components/tabs.less
@@ -0,0 +1,299 @@
+/**
+ * Styling for namespace tabs (page, discussion) and views (read, edit, view history, watch and other actions)
+ */
+
+/* Navigation Labels */
+div.vectorTabs h3 {
+ display: none;
+}
+
+/* Namespaces and Views */
+div.vectorTabs {
+ float: left;
+ height: 2.5em;
+ .background-image('images/tab-break.png');
+ background-position: bottom left;
+ background-repeat: no-repeat;
+ padding-left: 1px;
+
+ ul {
+ float: left;
+ height: 100%;
+ list-style-type: none;
+ list-style-image: none;
+ margin: 0;
+ padding: 0;
+ .background-image('images/tab-break.png');
+ background-position: right bottom;
+ background-repeat: no-repeat;
+
+ li {
+ float: left;
+ line-height: 1.125em;
+ /* For IE6, overridden later to display:block by modern browsers */
+ display: inline-block;
+ height: 100%;
+ margin: 0;
+ padding: 0;
+ .background-image('images/tab-normal-fade.png');
+ background-position: bottom left;
+ background-repeat: repeat-x;
+ white-space: nowrap;
+ }
+
+ /* IGNORED BY IE6 which doesn't support child selector */
+ > li {
+ display: block;
+ }
+ }
+
+ li {
+ &.new {
+ a,
+ a:visited {
+ color: #a55858;
+ }
+ }
+
+ &.selected {
+ .background-image('images/tab-current-fade.png');
+ a,
+ a:visited {
+ color: #222;
+ text-decoration: none;
+ }
+ }
+
+ &.icon {
+ a {
+ background-position: bottom right;
+ background-repeat: no-repeat;
+ }
+ }
+
+ a {
+ /* For IE6, overridden later to display:block by modern browsers */
+ display: inline-block;
+ height: 1.9em;
+ padding-left: 0.625em; // equals `8px` at computed `font-size` of `12.8px`
+ padding-right: 0.625em;
+ color: @menu-link-color;
+ cursor: pointer;
+ font-size: 0.8em;
+ }
+
+ /* Ignored by IE6 which doesn't support child selector */
+ > a {
+ display: block;
+ }
+ }
+
+ span {
+ display: inline-block;
+ .background-image('images/tab-break.png');
+ background-position: bottom right;
+ background-repeat: no-repeat;
+ height: 100%;
+
+ a {
+ /* For IE6, overridden later to display:block by modern browsers */
+ display: inline-block;
+ padding-top: 1.25em;
+ }
+
+ /* Ignored by IE6 which doesn't support child selector */
+ > a {
+ float: left;
+ display: block;
+ }
+ }
+}
+
+/* Variants and Actions */
+div.vectorMenu {
+ direction: ltr;
+ float: left;
+ cursor: pointer;
+ position: relative;
+ line-height: 1.125em;
+}
+
+div#mw-head div.vectorMenu h3 {
+ float: left;
+ .background-image('images/tab-break.png');
+ background-repeat: no-repeat;
+ background-position: bottom right;
+ font-size: 1em;
+ height: 2.5em;
+ // `padding-right` >= `1px` effectively moves the "background border" outside of the element to act like a real
+ // border. It is necessary for `div.vectorMenu div.menu` dropdown to align well.
+ padding-right: 0.5em; // equals `8px` at computed `font-size` of `14px` as visually harmonically with `padding-left` in `div.vectorMenu h3 span`
+ margin-right: -1px;
+}
+
+div.vectorMenu h3 {
+ span {
+ position: relative;
+ display: block;
+ font-size: 0.8em;
+ padding-left: 0.625em;
+ padding-top: 1.25em;
+ padding-right: 16px;
+ font-weight: normal;
+ color: #444;
+
+ &:after {
+ content: '';
+ position: absolute;
+ top: 1.25em;
+ right: 0;
+ bottom: 0;
+ left: 0;
+ .background-image-svg('images/arrow-down.svg', 'images/arrow-down.png');
+ background-position: 100% 50%;
+ background-repeat: no-repeat;
+ // Modify the color of the image from the default #222 to approx. #444 to match the text.
+ opacity: 0.85;
+ }
+ }
+
+ &:hover span,
+ &:focus span {
+ color: @content-font-color;
+
+ &:after {
+ opacity: 1;
+ }
+ }
+}
+
+div.vectorMenu .vectorMenuCheckbox:checked + h3 span:after {
+ transform: scaleY( -1 );
+}
+
+div.vectorMenu .vectorMenuCheckbox:focus + h3 {
+ // Simulate browser focus ring
+ outline: dotted 1px; // Firefox style
+ outline: auto -webkit-focus-ring-color; // Webkit style
+}
+
+div.vectorMenu div.menu {
+ // Match the width of the dropdown "heading" (the tab)
+ min-width: 100%;
+ position: absolute;
+ top: 2.5em;
+ left: -1px;
+ background-color: @body-background-color;
+ border: 1px solid #a2a9b1;
+ border-top-width: 0;
+ clear: both;
+ box-shadow: 0 1px 1px 0 rgba( 0, 0, 0, 0.1 );
+ text-align: left;
+ display: none;
+ // Menus must overlap indicators (z-index: 1) and VisualEditor toolbar (z-index: 2)
+ z-index: 2;
+}
+
+div.vectorMenu:hover div.menu {
+ display: block;
+}
+// This is in a separate block, so that browsers supporting :hover but not :checked still apply the rule above
+// Support: IE8
+div.vectorMenu .vectorMenuCheckbox:checked ~ div.menu {
+ display: block;
+}
+
+div.vectorMenu ul {
+ list-style-type: none;
+ list-style-image: none;
+ padding: 0;
+ margin: 0;
+ text-align: left;
+}
+
+// stylelint-disable selector-no-vendor-prefix, selector-type-no-unknown
+
+/* Fixes old versions of FireFox */
+div.vectorMenu ul,
+x:-moz-any-link {
+ min-width: 5em;
+}
+
+/* Returns things back to normal in modern versions of FireFox */
+div.vectorMenu ul,
+x:-moz-any-link,
+x:default {
+ min-width: 0;
+}
+
+// stylelint-enable selector-no-vendor-prefix, selector-type-no-unknown
+
+div.vectorMenu li {
+ padding: 0;
+ margin: 0;
+ text-align: left;
+ line-height: 1em;
+}
+
+/* OVERRIDDEN BY COMPLIANT BROWSERS */
+div.vectorMenu li a {
+ display: inline-block;
+ padding: 0.625em;
+ white-space: nowrap;
+ color: @menu-link-color;
+ cursor: pointer;
+ font-size: 0.8em;
+}
+
+/* IGNORED BY IE6 */
+div.vectorMenu li > a {
+ display: block;
+}
+
+div.vectorMenu li.selected a,
+div.vectorMenu li.selected a:visited {
+ color: #222;
+ text-decoration: none;
+}
+
+// Invisible checkbox covering the dropdown menu handle
+.vectorMenuCheckbox {
+ cursor: pointer;
+ position: absolute;
+ top: 0;
+ left: 0;
+ z-index: 1;
+ opacity: 0;
+ width: 100%;
+ height: 100%;
+ margin: 0;
+ padding: 0;
+ // Hide the checkbox completely in browsers that don't support :checked
+ display: none;
+}
+
+:not( :checked ) > .vectorMenuCheckbox {
+ // When the browser supports :checked, display it
+ display: block;
+}
+
+// Expand vectorMenu as basic tabs in IE6
+// (IE6 doesn't support :hover on DIV)
+* html div.vectorMenu div.menu {
+ display: block;
+ position: static;
+ border: 0;
+}
+* html div#mw-head div.vectorMenu h3 {
+ display: none;
+}
+* html div.vectorMenu li {
+ float: left;
+ line-height: 1.125em;
+ border-right: 1px solid #a7d7f9;
+}
+* html div.vectorMenu li a {
+ padding-top: 1.25em;
+}
+
+@import 'watchstar.less';