Coder Social home page Coder Social logo

customcssforfx's Introduction

WebExtensions can not modify browsers appearance in Firefox 57+


The only way to modify ui is adding custom CSS code to userChrome.css and userContent.css files inside browsers profile folder.
Keep in mind CSS code can not create entirely new items, buttons or toolbars. It only can modify already present ui items.

Want to support me?


[ Paypal Me ]

Where to find Firefox profile folder and what is the correct location for user styles?


1. Find your profile folder ('profile names are different for everyone').

All OS
about:support > Profile Folder > Open Folder

or

Windows
C:\Users\ USERNAME \AppData\Roaming\Mozilla\Firefox\Profiles\ PROFILENAME \

You have to make hidden files visible to see "AppData" folder or open "%APPDATA%\Mozilla\Firefox\Profiles\" from explorers location bar.

Linux
\.mozilla\firefox\ PROFILENAME \
You have to make hidden files visible to see ".mozilla" folder.

Mac OS X
~\Library\Mozilla\Firefox\Profiles\ PROFILENAME \ or
~\Library\Application Support\Mozilla\Firefox\Profiles\ PROFILENAME \

2. User styles belong into "chrome" subolder. Create it, if there is none yet.
\ PROFILENAME \chrome\

3. Copy userChrome.css, userContent.css and subfolders into \chrome\ subfolder.

How to use custom user styles?


The userChrome.css and userContent.css files works like an options\configurations file. All main "features" can be enabled and disabled there.
Edit userChrome.css and userContent.css with any text editor (Notepad++ recommended on Windows) and enable btw. disable any feature you like by modifying, removing or outcommenting available "@import..." strings.
Restart browser after every change for changes to take effect.

Example
If you want "classic button appearance" for navigation toolbar buttons, the corresponding line has to look like this:
@import url(./css/buttons/classic_button_appearance_on_navbar.css);

If you do not want "classic button appearance" for navigation toolbar buttons, the corresponding line has to look like this:
/* @import url(./css/buttons/classic_button_appearance_on_navbar.css); */

Note
/* Code between this lines start and end symbols will be "ignored" btw. "outcommented" */

How to find ids and attributes?


1. Tools > WebDeveloper > Toggle Tools > Toolbox Options > Enable browser chrome and add-on debugging toolboxes
2. Tools > WebDeveloper > Toggle Tools > Toolbox Options > Enable remote debugging
3. Tools > WebDeveloper > Browser Toolbox

How to modify custom user styles?


Open CSS files with a text editor. Look through the code and change/remove values the way you like.
Some files contain additional instructions to tweak the ui for individual cases.
Restart Firefox for changes to take effect.

Suggested ui tweaks


Toolbar modes (suggestion: compact mode)
Customize mode > Density > Compact / Normal / Touch

Titlebar modes (suggestion: Firefox titlebar ['application/hamburger button in titlebar' only works in Firefox titlebar])
Customize mode > Title Bar > uncheck checkbox

Drag space above tabs toolbar (suggestion: disable drag space ['application/hamburger button in titlebar' works best without drag space])
Customize mode > Drag Space > uncheck checkbox

Bookmarks menu button on bookmarks toolbar
Customize mode > Toolbars > Bookmarks Toolbar
Customize mode > move 'bookmarks menu' button to bookmark toolbars end

Downloads button always visible
Customize mode > downloads button > click on button and uncheck 'Auto-hide'

Searchbar (suggestion: placed after location bar)
Customize mode > Search(bar) > move to navigation toolbar

Flexible spaces (suggestion: remove spaces after and before location bar)
Customize mode > grab and drag flexible space into palette

RSS icon in location bar
Install Awesome RSS WebExtension

'about:config' tweaks

(To revert changes right-click entry and select 'reset')

Tab audio icon
browser.tabs.showAudioPlayingIcon

Tab min width (suggestion: 100)
browser.tabs.tabMinWidth

Insert related tab after current tab (suggestion: enable / set to 'true')
browser.tabs.insertRelatedAfterCurrent

Hide 'http://' from url (suggestion: disable / set to 'false')
browser.urlbar.trimURLs

Open links in new tab/window
browser.link.open_newwindow.restriction > 0 (new tab instead window)

Preview tabs using 'Ctrl + Tab'
browser.ctrlTab.previews

Close window with last visible tab (suggestion: disable / set to 'false')
browser.tabs.closeWindowWithLastTab

Titlebar
browser.tabs.drawInTitlebar

HTML5 fullscreen warning
full-screen-api.warning.delay > 0 (reduces delay)
full-screen-api.warning.timeout > 0 (reduces delay)

Recently added bookmarks
browser.bookmarks.showRecentlyBookmarked

General animations
toolkit.cosmeticAnimations.enabled

Fullscreen animations for HTML5 content
full-screen-api.transition-duration.enter > 0 0 (reduces animation time)
full-screen-api.transition-duration.leave > 0 0 (reduces animation time)

Findbar: animated result highlighting
findbar.modalHighlight

Searchbar in 'about:preferences'
browser.preferences.search

Location Bar: search engines at popups bottom
browser.urlbar.oneOffSearches

Searchbar: open search results in new tab
browser.search.openintab

Reader mode
reader.parse-on-load.enabled

Geolocation (suggestion: disable / set to 'false')
geo.enabled

Pocket (suggestion: disable / set to 'false')
extensions.pocket.enabled

Container tabs
privacy.userContext.enabled

Flyweb
dom.flyweb.enabled

Font rendering
gfx.canvas.azure.backends > direct2d1.1,cairo,skia (old font rendering)
gfx.content.azure.backends > direct2d1.1,cairo,skia (old font rendering)

Anti fingerprinting
privacy.resistFingerprinting

Telemetry settings (suggestion: disable / set to 'false')
browser.ping-centre.telemetry
toolkit.telemetry.archive.enabled
toolkit.telemetry.bhrPing.enabled
toolkit.telemetry.enabled
toolkit.telemetry.firstShutdownPing.enabled
toolkit.telemetry.newProfilePing.enabled
toolkit.telemetry.reportingpolicy.firstRun
toolkit.telemetry.shutdownPingSender.enabled
toolkit.telemetry.unified
toolkit.telemetry.updatePing.enabled

customcssforfx's People

Contributors

aris-t2 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.