Beitrag von Horstmann (24. März 2026 um 22:02 )
Dieser Beitrag wurde vom Autor gelöscht (25. März 2026 um 18:20 ).
der Code für den Button.
Ändere bitte mal:
#new-tab-button
zu:
#tabs-newtab-button
und teste es dann.
Danke 2002Andreas aber leider hat das bei mir nicht geklappt!
Aber ich habe jetzt ein kleines JS, das genau das macht, was ich will.
Der Button ist wieder hinter dem letzten Tab.
// ==UserScript==
// @name New Tab Button Inside Scrollbox
// @include main
// ==/UserScript==
(function() {
function moveNewTabButton() {
const scrollbox = document.getElementById("tabbrowser-arrowscrollbox");
const newTabBtn = document.getElementById("new-tab-button");
// Prüfen, ob der Button bereits in der Scrollbox ist
if (scrollbox && newTabBtn && newTabBtn.parentNode !== scrollbox) {
// Button ans Ende der Scrollbox verschieben (nach den Tabs)
scrollbox.appendChild(newTabBtn);
}
}
// Initial ausführen, wenn DOM bereit ist
if (document.readyState === "complete") {
moveNewTabButton();
} else {
window.addEventListener("load", moveNewTabButton, { once: true });
}
// Sicherheitshalber: Wenn Firefox den Button zurücksetzt (z.B. bei Customization),
// wird er automatisch wieder verschoben
const observer = new MutationObserver((mutations) => {
for (let mutation of mutations) {
if (mutation.type === "childList" &&
document.getElementById("new-tab-button")?.parentNode?.id !== "tabbrowser-arrowscrollbox") {
moveNewTabButton();
}
}
});
const tabsContainer = document.getElementById("tabbrowser-tabs");
if (tabsContainer) {
observer.observe(tabsContainer, { childList: true, subtree: true });
}
})();
Alles anzeigen
Fragt mich aber bitte nicht mit welcher KI ich das erstellt habe, es war wieder so ein battle, wo ich nicht weis, welche Modelle
da verwendet werden.
Misst ![]()
Das mit dem Skript klappt doch nicht so, wie gewünscht! ![]()
Der Fuchs lässt sich per JS nicht mehr neu starten, weil er irgendwie nicht sauber beendet wird,
und beim Verschieben von Tabs gibt es auch Ungereimtheiten.
Doof! Was hat sich Mozilla dabei gedacht, den Button fest an den rechten Rand zu tackern?
B.z.w. aus der Tableiste zu nehmen. ![]()
Doof! Was hat sich Mozilla dabei gedacht, den Button fest an den rechten Rand zu tackern?
B.z.w. aus der Tableiste zu nehmen.
Was meinst du damit?
Wie erkläre ich es?
Der Button ist hier:
html#main-window body toolbox#navigator-toolbox.browser-toolbox-background toolbar#TabsToolbar.browser-toolbar.browser-titlebar hbox.toolbar-items hbox#TabsToolbar-customization-target.customization-target toolbarbutton#new-tab-button.toolbarbutton-1.chromeclass-toolbar-additional
aber die Tabs hier:
html#main-window body toolbox#navigator-toolbox.browser-toolbox-background toolbar#TabsToolbar.browser-toolbar.browser-titlebar hbox.toolbar-items hbox#TabsToolbar-customization-target.customization-target tabs#tabbrowser-tabs
vor Version 149 reichte dieses CSS, oder ähnlich, um den Button dynamisch hinter den letzten Tab zu bekommen.
.tabbrowser-tab:not([pinned]) + #tabbrowser-arrowscrollbox-periphery {
margin-left: -16px !important; /* Abstand zum Tab */
z-index: 2 !important;
}
Das verstehe ich jetzt mal so überhaupt nicht mehr!
Ich habe ein gespiegeltes Testprofil, da ist der Button dynamisch hinter den Tabs.
Da muss ich mal schauen WAS genau da anders ist!
Der Code ändert doch nichts daran, an welcher Stelle irgendein Button erscheint. Du verschiebst damit lediglich ein Element um wenige Pixel zur Seite und änderst den Stacking Context, sprich worüber oder worunter das Element erscheinen würde, wenn weitere Elemente absolut positioniert wären. Und das sieht in Firefox Nightly immer noch gleich aus wie in Firefox ESR 140 (weswegen ich mir einen Test in Versionen dazwischen erspart habe). Ich sehe auch keinen Button, den Mozilla „fest an den rechten Rand getackert” hätte. Und der Button zum Öffnen eines neuen Tabs ist nach wie vor Bestandteil der Tableiste. Vielleicht passt irgendetwas in Zusammenhang mit deinem Script nicht mehr. Aber das, was du beschrieben hast, ist nichts, was Mozilla getan hat.
Sören Hentzschel Ich selber war DAS!
Habe die Tage doch am CSS herumgeschraubt, dabei habe ich das irgendwie verhundst.
Habe gerade ein Backup eingespielt und da ist der Button dynamisch.
Melde mich, wenn ich den Fehler gefunden habe.
Fehler gefunden![]()
Es war das CSS zum Verschieben der Tableiste.
Anstatt:
#TabsToolbar,
.global-notificationbox,
#tab-notification-deck,
#notifications-toolbar {
order: 1;
}
#TabsToolbar > :is(.titlebar-spacer,.titlebar-buttonbox-container) {
display: none;
}
:root[customtitlebar] #toolbar-menubar:is([autohide=""],[autohide="true"],[collapsed]) ~ #nav-bar {
> .titlebar-buttonbox-container {
display: flex !important;
}
:root[sizemode="normal"] & {
> .titlebar-spacer {
display: flex !important;
}
}
:root[sizemode="maximized"] & {
> .titlebar-spacer[type="post-tabs"] {
display: flex !important;
}
}
}
Alles anzeigen
benutze ich jetzt doch wieder:
Das mit dem Skript klappt doch nicht so, wie gewünscht!
Der Fuchs lässt sich per JS nicht mehr neu starten, weil er irgendwie nicht sauber beendet wird,
und beim Verschieben von Tabs gibt es auch Ungereimtheiten.Doof! Was hat sich Mozilla dabei gedacht, den Button fest an den rechten Rand zu tackern?
B.z.w. aus der Tableiste zu nehmen.
#tabs-newtab-button ist nicht der #new-tab-button, dein Script und dein CSS macht am falschen Button rum. ![]()
#new-tab-button taucht bei Tab Overflow auf, wo dann der "normale" #tabs-newtab-button, der mit den Tabs mitwandert, ausgeblendet wird.
Ausserdem ist der Button auch verschiebbar.
Das Skript war Murks!
Wie ich von #tabs-newtab-button auf #new-tab-button gekommen bin weiß ich auch nicht.
Irgendwas falsch gemacht mit den Browserwerkzeugen.
Aber ist alles ja jetzt egal, da ich mir den Fehler ja selber eingebaut hatte,
nun ist es aber behoben.