Firefox Browser Add-ons
  • Extensions
  • Themes
    • for Firefox
    • Dictionaries & Language Packs
    • Other Browser Sites
    • Add-ons for Android
Log in
Preview of Tab Preview On Hover

Tab Preview On Hover by Eason

Adds on-hover tab preview to Firefox (requires CSS theme).

ExperimentalExperimental
4.9 (8 reviews)4.9 (8 reviews)
76 Users76 Users
You'll need Firefox to use this extension
Download Firefox and get the extension
Download file

Extension Metadata

Screenshots
About this extension
This add-on may no longer receive updates, as tab preview is now supported in current versions of Firefox.

What Does the Add-on & CSS Theme Do

With the add-on and the supporting CSS theme, tab preview will appear when a tab is hovered over.

There will be a delay before tab preview shows up. At the same time, if the cursor hovers from one tab over another tab, there’ll be no delay. If the cursor leaves the tab area for a short moment and goes back, the delay will come back. The behaviour is controlled by the CSS theme, user can simply change --preview-delay and --preview-delay-tolerance to adjust the timing.


How to Install the CSS Theme
  1. Go to about:support and locate Profile Folder
  2. Download or copy the CSS theme and move it into Profile Folder -> chrome
  3. Go to about:config and turn toolkit.legacyUserProfileCustomizations.stylesheets to true
  4. Restart Firefox


Compromises
  1. Background image for the browser navbar will be disabled
  2. Incompatible with built-in browser themes “System theme – auto” and “Firefox Alpenglow”
  3. Only the first ten tabs on the left will have tab preview
  4. Adaptive Tab Bar Colour can cause the tab preview to disappear at times, as it resets the browser theme whenever it changes the colour of the tab bar


Supporting CSS Theme

The CSS theme is also available here: download.

/* Tab Preview On Hover supporting CSS theme */

/* Move this file to profile folder > chrome, or append to existing userChrome.css */

/* Version 2024-03-01 */

#navigator-toolbox:-moz-lwtheme {
background-image: none !important;
}

#navigator-toolbox {
z-index: 10 !important;
}

#tabbrowser-tab-tooltip {
display: none !important;
}

.tabbrowser-tab::after {
--preview-delay: 1s; /* Delay of tab preview when the cursor move onto a tab from outside of tab bar */
--preview-delay-tolerance: 0.75s; /* Max time period of cursor not hovering on tab bar before preview delay re-engages */
--preview-width: 200px; /* Width of the preview panel */
--preview-height: 150px; /* Height of the preview panel */
}

.tabbrowser-tab::after {
box-shadow: 0 0 50px black, 0 0 0 1px var(--arrowpanel-border-color) inset;
outline: 0.5px solid black;
pointer-events: none;
content: "";
display: none;
position: absolute;
z-index: 10000;
top: 50px /* Edit if the preview panel is misplaced */;
width: var(--preview-width);
height: var(--preview-height);
background-color: var(--lwt-accent-color);
background-image: var(--lwt-additional-images);
background-repeat: no-repeat;
background-clip: padding-box;
border-radius: 8px;
}

#tabbrowser-arrowscrollbox:not(:hover) .tabbrowser-tab::after {
transition: opacity 0.5s, filter 0s var(--preview-delay-tolerance);
filter: opacity(0);
}

#tabbrowser-arrowscrollbox:hover .tabbrowser-tab::after {
transition: opacity 0.5s, filter 0.5s var(--preview-delay);
filter: opacity(1);
}

.tabbrowser-tab:not(:hover)::after {
opacity: 0;
}

.tabbrowser-tab:hover::after {
opacity: 1;
}

.tabbrowser-tab[selected]:hover::after {
opacity: 0;
transition-duration: 0.25s !important;
}

.tabbrowser-tab:nth-of-type(1)::after {
display: block;
background-size: cover, 0, 0, 0, 0, 0, 0, 0, 0, 0;
}

.tabbrowser-tab:nth-of-type(2)::after {
display: block;
background-size: 0, cover, 0, 0, 0, 0, 0, 0, 0, 0;
}

.tabbrowser-tab:nth-of-type(3)::after {
display: block;
background-size: 0, 0, cover, 0, 0, 0, 0, 0, 0, 0;
}

.tabbrowser-tab:nth-of-type(4)::after {
display: block;
background-size: 0, 0, 0, cover, 0, 0, 0, 0, 0, 0;
}

.tabbrowser-tab:nth-of-type(5)::after {
display: block;
background-size: 0, 0, 0, 0, cover, 0, 0, 0, 0, 0;
}

.tabbrowser-tab:nth-of-type(6)::after {
display: block;
background-size: 0, 0, 0, 0, 0, cover, 0, 0, 0, 0;
}

.tabbrowser-tab:nth-of-type(7)::after {
display: block;
background-size: 0, 0, 0, 0, 0, 0, cover, 0, 0, 0;
}

.tabbrowser-tab:nth-of-type(8)::after {
display: block;
background-size: 0, 0, 0, 0, 0, 0, 0, cover, 0, 0;
}

.tabbrowser-tab:nth-of-type(9)::after {
display: block;
background-size: 0, 0, 0, 0, 0, 0, 0, 0, cover, 0;
}

.tabbrowser-tab:nth-of-type(10)::after {
display: block;
background-size: 0, 0, 0, 0, 0, 0, 0, 0, 0, cover;
}
Rated 4.9 by 8 reviewers
Log in to rate this extension
There are no ratings yet

Star rating saved

5
7
4
1
3
0
2
0
1
0
Read all 8 reviews
Permissions and dataLearn more

Required permissions:

  • Access browser tabs
  • Access your data for all web sites
More information
Add-on Links
  • Homepage
  • Support site
  • Support Email
Version
1.1
Size
28.71 kB
Last updated
2 years ago (28 Aug 2023)
Related Categories
  • Appearance
  • Tabs
Licence
MIT Licence
Version History
  • See all versions
Add to collection
Report this add-on
Release notes for 1.1
Revoked changes regarding the compatibility with Adaptive Tab Bar Colour due to performance issues
More extensions by Eason
  • There are no ratings yet

  • There are no ratings yet

  • There are no ratings yet

  • There are no ratings yet

  • There are no ratings yet

  • There are no ratings yet

Go to Mozilla's homepage

Add-ons

  • About
  • Firefox Add-ons Blog
  • Extension Workshop
  • Developer Hub
  • Developer Policies
  • Community Blog
  • Forum
  • Report a bug
  • Review Guide

Browsers

  • Desktop
  • Mobile
  • Enterprise

Products

  • Browsers
  • VPN
  • Relay
  • Monitor
  • Pocket
  • Bluesky (@firefox.com)
  • Instagram (Firefox)
  • YouTube (firefoxchannel)
  • Privacy
  • Cookies
  • Legal

Except where otherwise noted, content on this site is licensed under the Creative Commons Attribution Share-Alike Licence v3.0 or any later version.