summaryrefslogtreecommitdiffstats
path: root/browser/base/content/tabbrowser.css
diff options
context:
space:
mode:
Diffstat (limited to 'browser/base/content/tabbrowser.css')
-rw-r--r--browser/base/content/tabbrowser.css101
1 files changed, 101 insertions, 0 deletions
diff --git a/browser/base/content/tabbrowser.css b/browser/base/content/tabbrowser.css
new file mode 100644
index 0000000000..120203141c
--- /dev/null
+++ b/browser/base/content/tabbrowser.css
@@ -0,0 +1,101 @@
+/* This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/. */
+
+.tab-close-button[pinned],
+#tabbrowser-tabs[closebuttons="activetab"] > #tabbrowser-arrowscrollbox > .tabbrowser-tab > .tab-stack > .tab-content > .tab-close-button:not([selected]),
+.tab-icon-pending:not([pendingicon]),
+.tab-icon-pending[busy],
+.tab-icon-pending[pinned],
+.tab-icon-image:not([src], [pinned], [crashed], [pictureinpicture])[selected],
+.tab-icon-image:not([src], [pinned], [crashed], [sharing], [pictureinpicture]),
+.tab-icon-image[busy],
+.tab-throbber:not([busy]),
+.tab-sharing-icon-overlay,
+.tab-icon-overlay {
+ display: none;
+}
+
+:root[uidensity=compact] .tab-secondary-label,
+.tab-secondary-label:not([soundplaying], [muted], [activemedia-blocked], [pictureinpicture]),
+.tab-secondary-label:not([activemedia-blocked]) > .tab-icon-sound-blocked-label,
+.tab-secondary-label[muted][activemedia-blocked] > .tab-icon-sound-blocked-label,
+.tab-secondary-label[activemedia-blocked] > .tab-icon-sound-playing-label,
+.tab-secondary-label[muted] > .tab-icon-sound-playing-label,
+.tab-secondary-label[pictureinpicture] > .tab-icon-sound-playing-label,
+.tab-secondary-label[pictureinpicture] > .tab-icon-sound-muted-label,
+.tab-secondary-label:not([pictureinpicture]) > .tab-icon-sound-pip-label,
+.tab-secondary-label:not([muted]) > .tab-icon-sound-muted-label,
+.tab-secondary-label:not([showtooltip]) > .tab-icon-sound-tooltip-label,
+.tab-secondary-label[showtooltip] > .tab-icon-sound-label:not(.tab-icon-sound-tooltip-label) {
+ display: none;
+}
+
+.tab-sharing-icon-overlay[sharing]:not([selected]),
+.tab-icon-overlay:is([soundplaying], [muted], [activemedia-blocked], [crashed]) {
+ display: revert;
+}
+
+.tabbrowser-tab {
+ --tab-label-mask-size: 2em;
+}
+
+.tab-label {
+ white-space: nowrap;
+ line-height: 1.7; /* override 'normal' in case of fallback math fonts with huge metrics */
+}
+
+.tab-secondary-label {
+ margin: -.3em 0 .3em; /* adjust margins to compensate for line-height of .tab-label */
+}
+
+.tab-label-container {
+ overflow: hidden;
+}
+
+.tab-label-container[pinned] {
+ width: 0;
+}
+
+.tab-label-container[textoverflow][labeldirection=ltr]:not([pinned]),
+.tab-label-container[textoverflow]:not([labeldirection], [pinned]):-moz-locale-dir(ltr) {
+ direction: ltr;
+ mask-image: linear-gradient(to left, transparent, black var(--tab-label-mask-size));
+}
+
+.tab-label-container[textoverflow][labeldirection=rtl]:not([pinned]),
+.tab-label-container[textoverflow]:not([labeldirection], [pinned]):-moz-locale-dir(rtl) {
+ direction: rtl;
+ mask-image: linear-gradient(to right, transparent, black var(--tab-label-mask-size));
+}
+
+tabpanels {
+ background-color: transparent;
+}
+
+/* Apply crisp rendering for favicons at exactly 2dppx resolution */
+@media (resolution: 2dppx) {
+ .tab-icon-image {
+ image-rendering: -moz-crisp-edges;
+ }
+}
+
+.closing-tabs-spacer {
+ pointer-events: none;
+}
+
+#tabbrowser-arrowscrollbox:not(:hover) > #tabbrowser-arrowscrollbox-periphery > .closing-tabs-spacer {
+ transition: width .15s ease-out;
+}
+
+browser[blank],
+browser[pendingpaint] {
+ opacity: 0;
+}
+
+#tabbrowser-tabpanels[pendingpaint] {
+ background-image: url(chrome://browser/skin/tabbrowser/pendingpaint.png);
+ background-repeat: no-repeat;
+ background-position: center center;
+ background-size: 30px;
+}