Comment (re)mettre la barre d'onglets sous la barre d'adresse de Firefox ?

Résolu/Fermé
mizushima Messages postés 27 Date d'inscription dimanche 15 octobre 2006 Statut Membre Dernière intervention 20 juin 2021 - Modifié le 8 mai 2019 à 07:51
maxou24 Messages postés 151 Date d'inscription lundi 11 août 2008 Statut Membre Dernière intervention 14 avril 2023 - 25 déc. 2019 à 12:57
Bonjour,

Résolu, solution ci-dessous.
J'avais essayé beaucoup des astuces glanées sur la toile, aucune ne fonctionnait car elle concernent d'anciennes versions de FF, même le bout de code /* mettre la barre des onglets en bas */ que j'avais ajouté dans le fichier userChrome.css du dossier chrome du dossier de profil que j'ai conservé de la version 56, n'est plus pris en compte.
Mais voilà, en cherchant bien au bon endroit non sans mal, la solution est ici :

https://support.mozilla.org/fr/questions/1248277 (code ci-dessous).

Si le dossier chrome n'existe pas dans ton dossier de profil il faudra le créer, puis créer dans ce dossier un fichier userChrome.css dans lequel il faudra copier le code ci-dessous. Si le fichier userChrome.css existe déjà, attention de ne pas recopier la première ligne @namespace url qui doit déjà y être. Je viens de tester en supprimant petit à petit des fonctions : tout le code n'est pas nécessaire, de plus il y a des parties qui justement ne fonctionnaient pas seules comme
#navigator-toolbox toolbar:not(#nav-bar):not(#toolbar-menubar) {-moz-box-ordinal-group:10}
#TabsToolbar {-moz-box-ordinal-group:1000!important}

qui semble donc venir de la préhistoire.
Alors je mets dans la 1ère boite la seule partie du code qui produit l'effet voulu (du moins sous windows 7 / FF v.66), et dans la 2e boite le code complet renseigné sur la page support.mozilla.org

1 - Code suffisant pour passer la barre d'onglet sous la barre d'adresse :
/*
 * Ne retirez pas la ligne @namespace line -- elle est requise pour un fonctionnement correct
 */
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* set default namespace to XUL */

/* *************** */
/* TABS: on bottom */
/* *************** */
#TabsToolbar {
 position: absolute !important;
 bottom: 0 !important;
 width: 100vw !important;
}

#tabbrowser-tabs {
  width: 100vw !important;
}
#main-window:not([chromehidden*="toolbar"])
#navigator-toolbox {padding-bottom: var(--tab-min-height) !important;}


2 - code complet renseigné sur la page https://support.mozilla.org/fr/questions/1248277
@namespace url("http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul"); /* only needed once */

/* ***************** */
/* TABS: on bottom */
#navigator-toolbox toolbar:not(#nav-bar):not(#toolbar-menubar) {-moz-box-ordinal-group:10}
#TabsToolbar {-moz-box-ordinal-group:1000!important}

#TabsToolbar {
 position: absolute !important;
 bottom: 0 !important;
 width: 100vw !important;
}

#tabbrowser-tabs {
  width: 100vw !important;
}
#main-window:not([chromehidden*="toolbar"]) #navigator-toolbox {padding-bottom: var(--tab-min-height) !important;}

/* TABS: height */
:root {
 --tab-toolbar-navbar-overlap: 0px !important;
 --tab-min-height: 33px !important; /* adjust to suit your needs */
}
:root #tabbrowser-tabs {
 --tab-min-height: 33px !important; /* needs to be the same as above under :root */
 --tab-min-width: 80px !important;
}

#TabsToolbar {
 height: var(--tab-min-height) !important;
 margin-bottom: 1px !important;
 box-shadow: ThreeDShadow 0 -1px inset, -moz-dialog 0 1px !important;
 background-color: var(--toolbar-bgcolor) !important;
}

#tabbrowser-tabs,
#tabbrowser-tabs > .tabbrowser-arrowscrollbox,
.tabbrowser-tabs[positionpinnedtabs] > .tabbrowser-tab[pinned] {
  min-height: var(--tab-min-height) !important;
  max-height: var(--tab-min-height) !important;
}

/* drag space */
.titlebar-spacer[type="pre-tabs"],
.titlebar-spacer[type="post-tabs"] {
  width: 40px;
}

/* Override vertical shifts when moving a tab */
#navigator-toolbox[movingtab] > #titlebar > #TabsToolbar {
  padding-bottom: unset !important;
}
#navigator-toolbox[movingtab] #tabbrowser-tabs {
  padding-bottom: unset !important;
  margin-bottom: unset !important;
}
#navigator-toolbox[movingtab] > #nav-bar {
  margin-top: unset !important;
}

/* hide windows-controls */
#TabsToolbar #window-controls {display:none!important;}

/* move caption buttons to right of Tab bar */
#main-window[tabsintitlebar]:not([inFullscreen="true"]) #toolbar-menubar[autohide="true"] ~ #TabsToolbar .titlebar-buttonbox-container {
 position: fixed !important;
 right: 0 !important;
 top: calc(6px + var(--tab-min-height)) !important;
 display: block !important;
 visibility: visible !important;
}
#toolbar-menubar[autohide="true"] ~ #TabsToolbar {padding-right: 100px !important;}

Bidouillage : J'ai laissé aussi la fonction #TabsToolbar avec margin-bottom: 3px !important; à la place de 1px, qui rend visible un peu plus la couleur des onglets contextuels du module https://addons.mozilla.org/fr/firefox/addon/multi-account-containers/


Configuration: Windows 7 / Firefox 66.0

4 réponses

Un grand merci Mizushima, enfin je retrouve mes onglets à leur place légitime.
Mais bon sang qu' elle peut être la logique des développeurs de firefox pour aller les mettre au dessus de la barre URL, alors qu'il me semble qu'une majorité d'utilisateurs souhaitent les avoir dessous?
Qu'ils veuillent faire notre bonheur, soit, mais pas malgré nous. Qu'ils nous laissent au moins le choix et ajoutent une extension en conséquence.

ps: Chemin complet à suivre pour modifier ou créer le fichier userChrome.css
C:\Users\Moi\AppData\Roaming\Mozilla\Firefox\Profiles\xxxxxxxxx.default-12345678901234/chrome
3