Browser Fiddling, Firefox, Vivaldi, CSS

  • Thread starter Thread starter Deleted member 197709
  • Start date Start date
D

Deleted member 197709

Guest
Over time fiddling with browsers to find what I liked best. I narrowed them down. I'm partial to Firefox but kind of Like Vivaldi too. I use both equally pretty much. I decided to give them a makeover with dark themes, and made the plunge in CSS. I'm a total dumby with CSS but with trial and error and searches over time, I managed to make them both pretty much the same aesthetically.

Firefox, looks same with Librewolf and Waterfox
Firefox.jpg


Vivaldi
Vivaldi.jpg



Here's a busy look. I made audio playing tab kinna crimson so I can recognize it easier when using other tabs. Hovering over tabs, I made light grey.

Firefox / Librewolf / Waterfox
Firefox-full.jpg


Panel
Firefox-panel.jpg




Vivaldi
Vivaldi-full.jpg


Panel and side tabs position...
I can't get use to side tabs as I normally don't have but just a few open. But for many open tabs, it's pretty cool I think.
Vivaldi-panel.jpg
Tabs-hover-expand.jpg
Tabs-retracted.jpg




CSS code. Ugh.. This was lots of trial and error and tons of searches as I knew nothing about CSS. Perhaps there's a better way to do all this with the code, but this seems to work well without issues. Incase anyone wants to fiddle or correct my code to be more ummm politically correct so to speak. :P

Firefox Theme = Dark Theme by Alex
The Colors used probably wouldn't look good with a lighter theme, but it's easy enough to edit them using a color picker.
Just thought I would share for others who might like the dark themes and inverted gradient-ish look. I did this for my desktop theme as it matches it really well.

This might work on windows as well, but I don't know. I did this on my Linux Desktop with a 2560 by 1080 screen. Added notes at beginning of css snippets to help me keep track of what does what.

To enable CSS mods in Firefox....

Open Firefox and go to about:config
Search for: toolkit.legacyUserProfileCustomizations.stylesheets
Set it to true.

To find the profile chrome dir...
Go to about:support in the address bar.
Find the Profile Folder row.
Click Open Folder, or just navigate to it in your file browser.
Create userChrome.css and userContent.css files in the chrome dir.

Create folder " img " in the chrome dir for a wallpaper, if you want to use a background image.

Example of the two files listed below, representing the picts above...
Below that, is the CSS I use for Vivaldi shown in the picts above.

Hope this helps others.


Firefox...
userChrome.css

CSS:
/* Tab: gradient colors */

#tabbrowser-tabs .tabbrowser-tab  .tab-content{

   top: 5px !important;

   height: 28px !important;

   background-color : #141414 !important;

   background: linear-gradient(180deg, #141414 0%, #2c2c2c 100%) !important;

   border-style: solid !important;

   border-radius: 4px !important;

   border-width: 1px 1px 1px 1px !important; /* top, right, bottom. left */

   border-color: #474747 #222222 #222222 #474747 !important;

}



/* Tab: selected gradient colors */

#tabbrowser-tabs .tabbrowser-tab[selected] .tab-content {

   top: 5px !important;

   height: 28px !important;

   border-radius: 4px !important;

   background-color : #281e17 !important;

   background: linear-gradient(180deg, #281e17 0%, #7d5f47 100%) !important;

   border-style: solid !important;

   border-width: 1px 1px 1px 1px !important; /* top, right, bottom. left */

   border-color: #ae8462 #423225 #423225 #ae8462 !important;

}



/* Tab: hovered gradient colors */

#tabbrowser-tabs .tabbrowser-tab:hover:not([selected]) .tab-content {

   top: 5px !important;

   height: 28px !important;

   border-radius: 4px !important;

   background-color : #1d1d1d !important;

   background: linear-gradient(180deg, #1d1d1d 0%, #616161 100%) !important;

   border-style: solid !important;

   border-width: 1px 1px 1px 1px !important; /* top, right, bottom. left */

   border-color: #7e7e7e #313131 #313131 #7e7e7e !important;

}



/* Tab: audio-playing gradient colors */

#tabbrowser-tabs .tabbrowser-tab[soundplaying] .tab-content {

   top: 5px !important;

   height: 28px !important;

   border-radius: 4px !important;

   background-color : #281919 !important;

   background: linear-gradient(180deg, #281919 0%, #7d4d4e 100%) !important;

   border-style: solid !important;

   border-width: 1px 1px 1px 1px !important; /* top, right, bottom. left */

   border-color: #ae6c6d #422929 #422929 #ae6c6d !important;

}



/* Poofy away freaky neon border in panel. */

:root{ --toolbar-field-focus-border-color: #000 !important; }



@-moz-document url-prefix(chrome://browser/content/places/) {

   treechildren::-moz-tree-row(current, focus) {

   outline: none !important;

  }

}



/* Poofy away the other freaky neon border in panel. */

#search-box,

#searchFilter,

input:not(#urlbar-input) {

     outline: none !important;

    border: none !important;

}


Firefox...
userContent.css

CSS:
/* Home page. */

@-moz-document url(about:home), url(about:newtab), url(about:privatebrowsing) {

  .click-target-container *, .top-sites-list * {

  color: #fff !important ;

  text-shadow: 2px 2px 2px #222 !important ;

}



/* Home page image inside /chrome/img folder. */

body::before {

   content: "" ;

   z-index: -1 ;

   position: fixed ;

   top: 0 ;

   left: 0 ;

   background: #000 no-repeat url(img/Heaven-Earth-New.jpg) center ;

   background-size: cover ;

   width: 100vw ;

   height: 100vh ;

}

}



/****************************************/



/* Poofy away yukky edit options button at bottom of home page. */

.personalizeButtonWrapper {

  display: none !important ;

}



/* Poofy away freaky neon border outline in some pages text fields...*/
/* Wasted time trying to do this in userChrome.css file. Ugh! */

input:focus,

textarea:focus,

select:focus,

a:focus {

   outline: none !important ;

}


Vivaldi CSS structure is a lot different Ugh. Took me longer to figure out and tweak. Anyway...
Theme = GNOME-compatible Dark
Theme colors in Vivaldi settings-themes-theme-editor are...
Background #212121
Foreground #ced4de
Highlight #363636
Accent #171717

Vivaldi CSS... All condensed in one file.
Added a note to make tabs longer by editing a js file. I think Vivaldi kinna hard coded them to be short and it took some searching to figure out how to make them more a practical length.

Vivaldi...
Can be named anything with .css extension. Just enable and designate the used dir, in Vivaldi appearance settings.
I separated the color specific stuff so the rest of the code can work on any Vivaldi theme.

CSS:
/* For Dad..................... */

/* Condensed tab containers as much as possible. */



/* Note... /opt/vivaldi/resources/vivaldi/bundle.js */

/* Longer Tabs Top and Bottom... Edit vU=180 to vU=215 */

/* The letters change with each new version or update. */

/* Just search for " =180 " in the file. */

/* Last update March 19, 2026 it was the third " =180 "  in the file. */

/* Vivaldi should let us do this with CSS. Not everyone is into a gazillion tiny tabs. */



/* Top Thinner tab container, move tabs to center. */

#tabs-tabbar-container.top {

   height: 28px !important;

   margin-top: -4px !important;

   margin-bottom: 4px !important;

}



/* Bottom Thinner tab container, move tabs to center. */

#tabs-tabbar-container.bottom {

   height: 28px !important;

   margin-top: 2px !important;

   margin-bottom: -1px !important;

}



/* Thinner tabs, corner radius, space between tabs. */

.tab {

   height: 27px !important;

   display: inline-block;

   border-radius: 4px !important;

   margin-top: 3px !important;

   margin-right: 4px !important;

   bottom: 1px !important;

}



/* Icon adjust.... */

.tab .tab.active .tab-header .favicon {

   margin-top: -1px !important;

}



/* Stop Icon Excess Filter... Active Tab. */

.tab.active .tab-header .favicon:not(.svg) {

   filter: brightness(105%) !important;

}



/* Fixed overflow with active tab, move titles to center. */

.tab-position .tab .title {

   font-family: Arial, Helvetica, sans-serif !important;

   font-size: 13px !important;

   vertical-align: middle !important;

   margin-top: 0px !important;

   width: 100px !important;

   overflow: hidden;

   text-overflow: ellipsis;

}



/* Adjust the plus button closer to tab. */

.button-toolbar.newtab {

   margin-top: 1px !important;

   margin-left: -4px !important;

}



/* Fixes Tabs position when Browser is Maximized. */

/* Tabs Top..... I'm not sure why this works. */

/* Maybe only fixes my maximized screen size 2560 by 1080 ? */

.maximized #tabs-tabbar-container.top {

   margin-top: 2px !important;

   margin-bottom: 1px !important;

}



/* Fixes Tabs position when Browser is Maximized. */

/* Tabs Bottom..... I'm not sure why this works. */

/* Maybe only fixes my maximized screen size 2560 by 1080 ? */

.maximized #tabs-tabbar-container.bottom {

   margin-top: -1px !important;

   margin-bottom: 3px !important;

}



/* Color Specific..................... */

/* Linux Dark Theme.............. */



/* Inverted gradient effect on tabs. */

/* Made for a dark theme GNOME-compatible Dark. */

/* Color specific. */



.tab {

   color: white !important;

   background-color : #141414 !important;

   background: linear-gradient(180deg, #141414 0%, #2c2c2c 100%);

   border-style: solid;

   border-radius: 4px !important;

   border-width: 1px 1px 1px 1px; /* top, right, bottom. left */

   border-color: #474747 #222222 #222222 #474747;

}



/* Tint active and border. */

.tab.active {

   background-color : #281e17 !important;

   background: linear-gradient(180deg, #281e17 0%, #7d5f47 100%);

   border-style: solid;

   border-width: 1px 1px 1px 1px; /* top, right, bottom. left */

   border-color: #ae8462 #423225 #423225 #ae8462;

}



/* Subtle highlight hover inactive tabs and border. */

.tab-position .tab:not(.active):hover {

   background-color : #1d1d1d !important;

   background: linear-gradient(180deg, #1d1d1d 0%, #616161 100%);

   border-style: solid;

   border-width: 1px 1px 1px 1px; /* top, right, bottom. left */

   border-color: #7e7e7e #313131 #313131 #7e7e7e;

}



/* Audio playing color. */

.tab.audio-on {

   background-color : #281919 !important;

   background: linear-gradient(180deg, #281919 0%, #7d4d4e 100%);

   border-style: solid;

   border-width: 1px 1px 1px 1px; /* top, right, bottom. left */

   border-color: #ae6c6d #422929 #422929 #ae6c6d;

}



/* Audio playing hover color. */

.tab-position .tab.audio-on:not(.active):hover {

   background-color : #281919 !important;

   background: linear-gradient(180deg, #281919 0%, #7d4d4e 100%);

   border-style: solid;

   border-width: 1px 1px 1px 1px; /* top, right, bottom. left */

   border-color: #ae6c6d #422929 #422929 #ae6c6d;

}



/* Panel Tweaks..................... */

/* Best with light grey theme highlight... */



#panels-container.overlay .panel-group {

   background-color: var(--colorAccentBgAlpha);

}



.panel-group {

   background-color: var(--colorAccentBgAlphaHeavy);

   backdrop-filter: blur(1.2em) brightness(0.55);

}



.panel .tree-row {

   color: var(--colorImageFg, var(--colorAccentFg));

   opacity: 0.9;

}



.panel .tree-row:hover {

   background-color: var(--colorAccentBgAlpha);

   transition: 0.3s ease-out;

   background-image: none;

   border-radius:var(--radius);

}



.panel-bookmarks > section.outerScrollbar > div > div > div > * > div > label:hover, #mail_panel > section > div > div > div > * > div > label:hover {

   transform: scale(1.02);

   transition: 0.3s ease-out;

}



/* Side Tabs.....Any Theme................ */

/* Edited to not effect top and bottom tab bars. */

/* Fixed small gap between address bar. */

/* Fixed tab mismatch when condensed. */

/* Centered tabs. */



/* Right Side Auto hide vertical tab bar. */

div#browser:not(.fullscreen) > #main > .inner > div:not(#webview-container):not(#panels-container), #tabs-tabbar-container.right {

    width: 34px !important;

    transition: width 0.20s;

    margin-top: -2px !important;

    margin-left: -2px !important;

}



div#browser:not(.fullscreen) > #main > .inner > div:not(#webview-container):not(#panels-container):hover, #tabs-tabbar-container.right:hover {

    width: 215px !important;  /* See note at beginning of the file for width to work. */

    transition: width 0.20s;

    margin-top: -2px !important;

    margin-left: -2px !important;

}



/* Left Side Auto hide vertical tab bar. */

div#browser:not(.fullscreen) > #main > .inner > div:not(#webview-container):not(#panels-container), #tabs-tabbar-container.left {

    width: 34px !important;

    transition: width 0.20s;

    margin-top: -2px !important;

    margin-right: -2px !important;

}



div#browser:not(.fullscreen) > #main > .inner > div:not(#webview-container):not(#panels-container):hover, #tabs-tabbar-container.left:hover {

    width: 215px !important;  /* See note at beginning of the file for width to work. */

    transition: width 0.20s;

    margin-top: -2px !important;

    margin-right: -2px !important;

}
 

Attachments

  • Firefox-full.jpg
    Firefox-full.jpg
    78.9 KB · Views: 52
  • Vivaldi-full.jpg
    Vivaldi-full.jpg
    87.5 KB · Views: 68
Last edited by a moderator:


Moving this to General Linux.

Wizard
 
This is CSS too. Plus some coding but mostly CSS. The browser is Waterfox - light years ahead of Firefox.

(clickable thumbnail)
Picture_created_10-03-2026_02-49-50.png
 
This is CSS too. Plus some coding but mostly CSS. The browser is Waterfox - light years ahead of Firefox.

(clickable thumbnail)
View attachment 30607
I like Waterfox a lot! My CSS works the same with it as it does with generic Firefox and Librewolf. Waterfox seems lighter and faster, less bloated.
 
Waterfox gets the tick of approval from me too. Way to go.
 
Firefox became way too much of a digital dictatorship, that's why I abandoned it. It's so much of a dictatorship that I can no longer have my profile in a directory of my choosing, it has to be whatever they decided and that's it. That might be OK to some but not to me.
 
@Leigh :-

Personally, I go with the bog-standard FF included "Dark" theme. Vivaldi, I have it set to a very deep, dark red theme (with matching gradients/highlights). For this, I simply edited one of the existing supplied themes, then saved it as a "Custom" theme. (You can't do this with any other Chromium 'clone'; Vivaldi's theming edits are unique to the browser).

For all my Chromium-based browsers (with the exception of Vivaldi) - Chrome / Chromium / Opera / Brave / Iron, I use 'Morpheon Dark' from the Chrome Web Store.

M$ Edge's 'dark theme' - and that of the Electron-based FreeTube - are very similar to Linux.org's 'Solarized Dark'.....which I'm quite partial to anyway.

~~~~~~~~~~~~~~~~~~~~~~~​

CSS stuff is just too much like hard work to me! I did pretty much all my "experimenting" & "tweaking" in Linux years ago. Now I'm the wrong side of 60, I prefer the "easy" solutions.....it's gentler on the old grey matter.

Kudos for attempting it, though!
good.gif



Mike. ;)
 
@Leigh :-

CSS stuff is just too much like hard work to me! I did pretty much all my "experimenting" & "tweaking" in Linux years ago. Now I'm the wrong side of 60, I prefer the "easy" solutions.....it's gentler on the old grey matter.

Kudos for attempting it, though!
good.gif



Mike. ;)
My interest in CSS was just to make the browsers I use appealing to me. I did it over time just fiddling every so often. My Dad loved butterscotch candies. That was kinna my inspiration with the coloring. I'm recently retired, way too young, but was able and am trying to stay retired. :P

I'm old school Linux too. Learning new stuff can be tedious. I know enough to really freak out my OS if I not careful. Thank goodness for backups!

Thanks... I can relate :)
 
@Leigh :-

Probably seems crazy - to most folks! - to have so many browsers on my system, but I package and make available an entire series of 'portable' applications for the 'Puppy' Linux community. That includes a range of browsers, since I believe in "choice in all things".

This also means I have copies of 'beta', 'canary' & 'nightly' builds around the place in varying states of readiness, because I like to see what's coming "down the tubes" in future releases.


Mike. ;)
 
Only my opinion...


Firefox is my top recommendation for a Linux user who cares about the ecosystem. It's the only major independent browser engine (Gecko) left standing against the Chromium monoculture. On Linux it's a first-class citizen, gets consistent updates, has excellent extension support, and respects your privacy by default. The one knock is that it can feel slightly heavier than Chromium on memory in some scenarios, though that gap has narrowed a lot.

Vivaldi is genuinely impressive if you want a feature-dense, highly customizable experience. Tab stacking, tiling, built-in mail client, notes, a calendar — it's almost a desktop app masquerading as a browser. The catch: it's closed-source (built on Chromium but with proprietary UI), which is a real trade-off for sysadmin types who care about auditability. It's also a bit heavy.

Waterfox is an interesting case — Firefox-based, drops Mozilla telemetry, and targets users who want legacy extension support or a lighter footprint. It's fine, but I'd honestly just use Firefox with about:config tweaks and uBlock Origin rather than delegating that work to a third party who might lag on security patches.

Chromium (upstream, not Chrome) is the clean option if you want the Chromium engine without Google's surveillance layer baked in. On Fedora/KDE it integrates reasonably well. My main gripe is it contributes to the Blink monoculture problem, and WebKit/Blink domination is bad for the open web long-term.

Chrome — I'd avoid it on a personal Linux system. It's Chromium plus Google data collection plus a proprietary license. There's no reason to use it over Chromium unless you specifically need Chrome-only DRM or Widevine (though Chromium handles most Widevine cases now too).

Edge on Linux — It's a telemetry package that happens to render web pages. Microsoft has no business being on my Linux desktop, and I suspect you feel similarly.
 
Waterfox gets the tick of approval from me too. Way to go.
So after reading on Waterfox on here I was looking for a download but all I can find for Linux is a Flatpak package? Is that correct?
 
@PuppyHome :-

So after reading on Waterfox on here I was looking for a download but all I can find for Linux is a Flatpak package? Is that correct?
Nah. You can install it the same way FF was traditionally installed.....BEFORE package managers started doing everything for you.

Go here:-


...and download the tarball (the tar.bz2 package). Extract it, and put the resulting self-contained directory where you want it (actually, /opt would be the best place for it).

Drag (or 'send', or otherwise 'link') the waterfox 'binary' to the desktop.....where you can use it as a launcher. Simples!

That's how I've just done it in my Fossapup chroot.


Mike. ;)
 
Last edited:
@PuppyHome :-


Nah. You can install it the same way FF was traditionally installed.....BEFORE package managers started doing everything for you.

Go here:-


...and download the tarball (the tar.bz2 package). Extract it, and put the resulting self-contained directory where you want it (actually, /opt would be the best place for it).

Drag the waterfox 'binary' to the desktop.....where you can use it as a launcher. Simples!

That's how I've just done it in my Fossapup chroot.


Mike. ;)

There is a bzip'ed tarball.

Thank you gentlemen. :cool:
 
or, to Install Waterfox, the following is worthy of notice.

(Thanks, @wizardfromoz) ;)

Right-click the .tar.gz (in your Downloads )
Extract here
Click into the resulting Waterfox folder
Double-click waterfox-bin

Getting it on Menu is easy with Cinnamon Menu Editor, for Waterfox icon you can use this
OIP-1308554175.jpeg




Once first used, it generates

~/.waterfox

Note: Using cinnamon menu editor; right click on menu and select Edit menu

Click on Internet, and then select New Item

The launcher should look similar to the below:

1773169653442.png


When filling in settings/preferences etc be sure to set Waterfox as your default browser

HTH
 
I installed Waterfox quite some time ago, using the tar.gz method. I have it auto updating itself and has done a good job in doing that.

Originally I installed Firefox, Waterfox, and Librewolf. I have them all set pretty much the same, selectively utilizing settings in about:config that aren't available in the browsers settings. Especially the AI stuff. It's a pet peeve of mine.

Kind of like i have a calculator that helps me with math sometimes. I love that it just sits there ready for me to use when I need it. It doesn't turn itself on harping at me to add 2 plus 2 thank God! hehe.

Besides that, I'm like who's programming these AI robots anyway? I'm happy without them, and just do lots reading.

That's just me though. I miss the old days when there were phone booths, or at least when phones were phones and not hand held computers trying to brainwash us all. LOL

Sorry, i'm not cynical really. Sitting behind people who don't see the light turn green because they have their face in a phone / computer, is common, and gets rather old.

Not just that... The park, a restaurant, a buss, shopping mall, no matter where you go.. It seems the majority is in a trance pecking on their hand held computers. I don't see it as a healthy thing. Don't get me wrong. I'm techy and like my computer! I just don't carry it around with me. ;)
 
selectively utilizing settings in about:config that aren't available in the browsers settings. Especially the AI stuff. It's a pet peeve of mine.
care to share ?
 
Running it now. Not bad at all this Waterfox. Feels 'old fashioned' and that's a good thing! Going to use it as daily browser for a bit and see what happens.

[poke] It's better than Librewolf so far. [/poke]
 
care to share ?
There's lot's in search results concerning AI settings in about:config, I think firefox is stepping up to make this easier due to so many against having it forced on us in browsers. Not sure if that's happening or has happened though.

A short list I saved that I think is pretty safe to turn off, if not already set to false....

Librewolf I think already had most off this stuff set to false, where generic firefox didn't. But that was quite a few updates ago since I fiddled with this.
  • browser.ml.enable
  • browser.ml.chat.enabled
  • browser.ml.chat.menu
  • browser.ml.chat.page
  • browser.ml.chat.page.footerBadge
  • browser.ml.chat.page.menuBadge
  • browser.ml.linkPreview.enabled
  • browser.ml.pageAssist.enabled
  • browser.tabs.groups.smart.enabled
  • browser.tabs.groups.smart.userEnabled
  • extensions.ml.enabled
  • browser.search.visualSearch.featureGate
 


Follow Linux.org

Members online


Top