theme
| Typ | Object |
|---|---|
| Verpflichtend | Nein |
| Manifest-Version | 2 oder höher |
| Beispiel |
json |
Verwenden Sie den theme-Schlüssel, um ein statisches Theme zu definieren, das in Firefox angewendet wird. Wenn es allein bereitgestellt wird, definiert es das Theme, das verwendet wird, wenn Firefox entweder das helle oder das dunkle Farbschema verwendet. Wenn der dark_theme-Schlüssel bereitgestellt wird, liefert dieser Schlüssel das Theme, das verwendet wird, wenn Firefox das helle Farbschema verwendet.
Hinweis:
Wenn Sie ein Theme mit einer Erweiterung einfügen möchten, sehen Sie bitte die theme API.
Hinweis: Seit Mai 2019 müssen Themes signiert sein, um installiert werden zu können (Firefox-Bug 1545109). Weitere Details finden Sie unter Signing and distributing your add-on.
Bildformate
Folgende Bildformate werden in allen Theme-Bild-Eigenschaften unterstützt:
- JPEG
- PNG
- APNG
- SVG (animiertes SVG wird ab Firefox 59 unterstützt)
- GIF (animiertes GIF wird nicht unterstützt)
Syntax
Der Theme-Schlüssel ist ein Objekt, das folgende Eigenschaften annimmt:
| Name | Typ | Beschreibung |
|---|---|---|
images |
Object |
Optional ab Firefox 60. Vor Firefox 60 verpflichtend.
Ein JSON-Objekt, dessen Eigenschaften die im Browser anzuzeigenden Bilder darstellen. Weitere Informationen zu den Eigenschaften, die dieses Objekt enthalten kann, finden Sie unter
|
colors |
Object |
Verpflichtend
Ein JSON-Objekt, dessen Eigenschaften die Farben verschiedener Teile des Browsers darstellen. Weitere Informationen zu den Eigenschaften, die dieses Objekt enthalten kann, finden Sie unter |
properties |
Object |
Optional
Dieses Objekt hat Eigenschaften, die beeinflussen, wie die
|
images
Alle URLs sind relativ zur manifest.json-Datei und können keine externe URL referenzieren.
Bilder sollten 200 Pixel hoch sein, um sicherzustellen, dass sie den Headerbereich immer vertikal ausfüllen.
| Name | Typ | Beschreibung |
|---|---|---|
theme_frame |
String oder Object |
Ein Vordergrundbild (definiert durch den Pfad zu einem in der Erweiterung verpackten Bildasset) oder CSS-Verlauf, das dem Headerbereich hinzugefügt und an der oberen rechten Ecke des Headerbereichs verankert wird. CSS-Verläufe werden ab Firefox 153 unterstützt. Hinweis: Chrome verankert das Bild an der oberen linken Ecke des Headers und kachelt das Bild, wenn es den Headerbereich nicht ausfüllt. Optional in Desktop-Firefox ab Version 60. |
additional_backgrounds |
Array von String oder Object |
Warnung: Die
Ein Array von zusätzlichen Hintergrundelementen, die jeweils entweder der Pfad zu einem in der Erweiterung verpackten Bildasset oder CSS-Verlauf sind und dem Headerbereich hinzugefügt werden, hinter dem Optional
Standardmäßig werden alle Elemente an der oberen rechten Ecke des Headerbereichs verankert, aber ihre Ausrichtung, Wiederholung und Größenverhalten können über
Da zusätzliche Hintergrundelemente hinter dem |
CSS-Verlaufssyntax
Ein CSS-Verlauf wird als Objekt in der Form { "GRADIENT_TYPE": "GRADIENT_PARAMS" } angegeben, wobei:
GRADIENT_TYPEeines der folgenden ist:linear-gradientradial-gradientconic-gradientrepeating-linear-gradientrepeating-radial-gradientrepeating-conic-gradient
GRADIENT_PARAMSdie Parameter für diese CSS-Verlaufsfunktion enthält, wie in CSS-Verlaufswerte beschrieben.
colors
Diese Eigenschaften definieren die Farben, die für verschiedene Bereiche des Browsers verwendet werden. Sie sind alle optional. Wie diese Eigenschaften die Firefox-Benutzeroberfläche beeinflussen, wird hier gezeigt:
|
|
Hinweis: Wo ein Element von mehreren Farbeigenschaften betroffen ist, werden die Eigenschaften in der Reihenfolge ihrer Priorität aufgelistet.
Alle diese Eigenschaften können entweder als Zeichenfolge angegeben werden, die einen gültigen CSS-Farbwert (einschließlich Hexadezimalnotation) enthält, oder als RGB-Array, zum Beispiel "tab_background_text": [ 107 , 99 , 23 ].
| Name | Beschreibung |
|---|---|
bookmark_text |
Die Farbe von Text und Symbolen in den Lesezeichen- und Suchleisten. Außerdem, wenn
Hinweis: Stellen Sie sicher, dass jede verwendete Farbe in gutem Kontrast zu den in
Wenn Beispiel ansehenjson
|
button_background_active |
Die Farbe des Hintergrunds der gedrückten Symbolleistenschaltflächen. Beispiel ansehenjson
|
button_background_hover |
Die Farbe des Hintergrunds der Symbolleistenschaltflächen beim Überfahren mit der Maus. Beispiel ansehenjson
|
icons |
Die Farbe der Symbole in der Symbolleiste, ausgenommen der in der Suchleiste.
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit den in Beispiel ansehenjson
|
icons_attention |
Die Farbe der Aufmerksamkeitssymbole in der Symbolleiste, wie das Stern-Lesezeichensymbol oder das beendete Downloads-Symbol.
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit den in Beispiel ansehenjson
|
frame |
Die Farbe des Hintergrunds des Headerbereichs, sichtbar in dem Teil des Headers, der nicht von den in Beispiel ansehenjson
|
frame_inactive |
Die Farbe des Hintergrunds des Headerbereichs, wenn das Browserfenster inaktiv ist, sichtbar in dem Teil des Headers, der nicht von den in Beispiel ansehenjson
|
ntp_background |
Die Hintergrundfarbe der neuen Tab-Seite. Beispiel ansehenjson
|
ntp_card_background |
Die Hintergrundfarbe der Karten auf der neuen Tab-Seite. Beispiel ansehenjson
|
ntp_text |
Die Textfarbe der neuen Tab-Seite.
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit den in Beispiel ansehenjson
|
popup |
Die Hintergrundfarbe von Popups (wie dem Dropdown-Menü der URL-Leiste und den Pfeil-Paneelen). Beispiel ansehenjson
|
popup_border |
Die Randfarbe der Popups. Beispiel ansehenjson
|
popup_highlight |
Die Hintergrundfarbe von mit der Tastatur hervorgehobenen Elementen in Popups (wie das ausgewählte Element im Dropdown-Menü der URL-Leiste).
Hinweis: Es wird empfohlen Beispiel ansehenjson |
popup_highlight_text |
Die Textfarbe von hervorgehobenen Elementen innerhalb von Popups.
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit der in Beispiel ansehenjson
|
popup_text |
Die Textfarbe von Popups.
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit der in Beispiel ansehenjson
|
sidebar |
Die Hintergrundfarbe der Seitenleiste. Beispiel ansehenjson
|
sidebar_border |
Die Farbe des Rahmens und der Trennlinie der Browser-Seitenleiste Beispiel ansehenjson
|
sidebar_highlight |
Die Hintergrundfarbe von hervorgehobenen Zeilen in integrierten Seitenleisten Beispiel ansehenjson
|
sidebar_highlight_text |
Die Textfarbe von hervorgehobenen Zeilen in Seitenleisten.
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit der in Beispiel ansehenjson
|
sidebar_text |
Die Textfarbe von Seitenleisten.
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit der in Beispiel ansehenjson
|
tab_background_separator
|
Warnung: Die Farbe des vertikalen Trennzeichens im Hintergrund der Registerkarten. Beispiel ansehenjson
|
tab_background_text |
Die Farbe des Textes, der in den inaktiven Registerkarten angezeigt wird. Wenn
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit den in Beispiel ansehenjson
|
tab_line |
Die Farbe der Linie der ausgewählten Registerkarte. Beispiel ansehenjson
|
tab_loading |
Die Farbe des Ladeindikators der Registerkarte und des Ladeimpulses der Registerkarte. Beispiel ansehenjson
|
tab_selected |
Die Hintergrundfarbe der ausgewählten Registerkarte. Wenn es nicht verwendet wird, wird die Farbe der ausgewählten Registerkarte durch Beispiel ansehenjson
|
tab_text |
Ab Firefox 59 repräsentiert es die Textfarbe der ausgewählten Registerkarte. Wenn
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit den in Beispiel ansehenjson
|
toolbar |
Die Hintergrundfarbe für die Navigationsleiste, die Lesezeichenleiste und die ausgewählte Registerkarte. Dies legt auch die Hintergrundfarbe der "Suchen"-Leiste fest. Beispiel ansehenjson
|
toolbar_bottom_separator |
Die Farbe der Linie, die den unteren Rand der Symbolleiste von der darunterliegenden Region trennt. Beispiel ansehenjson
|
toolbar_field |
Die Hintergrundfarbe für Felder in der Symbolleiste, wie die URL-Leiste. Dies legt auch die Hintergrundfarbe des Suchen innerhalb der Seite Felds fest. Beispiel ansehenjson
|
toolbar_field_border |
Die Randfarbe für Felder in der Symbolleiste. Dies legt auch die Randfarbe des Suchen innerhalb der Seite Felds fest. Beispiel ansehenjson
|
toolbar_field_border_focus |
Die Randfarbe der markierten Felder in der Symbolleiste. Beispiel ansehenjson
|
toolbar_field_focus |
Die Hintergrundfarbe der fokussierten Felder in der Symbolleiste, wie die URL-Leiste. Beispiel ansehenjson
|
toolbar_field_highlight |
Die Hintergrundfarbe zur Hervorhebung der aktuellen Textauswahl in der URL-Leiste (und der Suchleiste, falls diese separat konfiguriert ist).
Beispiel ansehenjson
Hierbei gibt das Feld |
toolbar_field_highlight_text |
Die Farbe zum Zeichnen von Texten, die derzeit in der URL-Leiste ausgewählt sind (und der Suchleiste, falls diese als separate Box konfiguriert ist).
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit der in Beispiel ansehenjson
Hierbei wird das Feld |
toolbar_field_separator |
Warnung:
Die Farbe der Trennzeichen innerhalb der URL-Leiste. In Firefox 58 wurde dies als Beispiel ansehenjson
In diesem Screenshot ist |
toolbar_field_text |
Die Farbe des Textes in Feldern der Symbolleiste, wie der URL-Leiste. Dies legt auch die Farbe des Textes im Suchen innerhalb der Seite Feld fest.
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit der in Beispiel ansehenjson
|
toolbar_field_text_focus |
Die Farbe des Textes in fokussierten Feldern der Symbolleiste, wie der URL-Leiste.
Hinweis: Stellen Sie sicher, dass die verwendete Farbe gut mit der in Beispiel ansehenjson
|
toolbar_text |
Die Farbe des Textes in der Symbolleiste. Dies legt auch die Farbe des Textes in der "Suchen"-Leiste fest.
Hinweis: Für die Kompatibilität mit Chrome, verwenden Sie den Alias Beispiel ansehenjson
|
toolbar_top_separator |
Die Farbe der Linie, die den oberen Rand der Symbolleiste von dem Bereich darüber trennt. Beispiel ansehenjson
|
toolbar_vertical_separator |
Die Farbe des Trennzeichens im Lesezeichentoolbar. In Firefox 58 entspricht dies der Farbe der Trennzeichen innerhalb der URL-Leiste. Beispiel ansehenjson
|
Aliases
Zusätzlich akzeptiert dieser Schlüssel verschiedene Eigenschaften, die Aliase für eine der oben genannten Eigenschaften sind. Diese werden zur Kompatibilität mit Chrome bereitgestellt. Wenn ein Alias gegeben ist und die Nicht-Alias-Version ebenfalls gegeben ist, wird der Wert von der Nicht-Alias-Version übernommen.
| Name | Alias für |
|---|---|
bookmark_text |
toolbar_text |
properties
| Name | Typ | Beschreibung |
|---|---|---|
additional_backgrounds_alignment |
|
Optional
Ein Array von Enumerationswerten, die die Ausrichtung des entsprechenden
Wenn das Array weniger Elemente als das Wenn nicht angegeben, wird standardmäßig |
additional_backgrounds_tiling |
|
Optional
Ein Array von Enumerationswerten, die definieren, wie das entsprechende
Wenn das Array weniger Elemente als das Wenn nicht angegeben, wird standardmäßig |
additional_backgrounds_size |
|
Optional
Ein Array von Werten, die die Größe des entsprechenden
Wenn das Array weniger Elemente als das Wenn nicht angegeben, wird standardmäßig |
color_scheme |
|
Optional Bestimmt, welches Farbschema auf das Chrome (z.B. Kontextmenüs) und den Inhalt (z.B. integrierte Seiten und das bevorzugte Farbschema für Webseiten) angewendet wird. Optionen umfassen:
Wenn nicht angegeben, wird standardmäßig |
content_color_scheme |
|
Optional
Bestimmt, welches Farbschema auf den Inhalt (z. B. integrierte Seiten und das bevorzugte Farbschema für Webseiten) angewendet wird. Überschreibt
Wenn nicht angegeben, wird standardmäßig |
Beispiele
Ein einfaches Theme muss ein Bild definieren, das dem Header hinzugefügt wird, die Akzentfarbe, die im Header verwendet wird, und die Farbe des Textes, der im Header verwendet wird:
"theme": {
"images": {
"theme_frame": "images/sun.jpg"
},
"colors": {
"frame": "#CF723F",
"tab_background_text": "black"
}
}
Mehrere Elemente können verwendet werden, um den Header zu füllen. Vor Version 60 von Firefox verwenden Sie ein leeres oder transparentes Headerbild, um die Platzierung jedes zusätzlichen Elements zu steuern:
"theme": {
"images": {
"additional_backgrounds": [ "images/left.png", "images/middle.png", "images/right.png"]
},
"properties": {
"additional_backgrounds_alignment": [ "left top", "top", "right top"]
},
"colors": {
"frame": "blue",
"tab_background_text": "white"
}
}
Sie können den Header auch mit einem wiederholten Bild oder Bildern füllen, in diesem Fall ein einzelnes Bild, das in der Mitte oben im Header verankert ist und über den Rest des Headers wiederholt wird:
"theme": {
"images": {
"additional_backgrounds": [ "images/logo.png"]
},
"properties": {
"additional_backgrounds_alignment": [ "top" ],
"additional_backgrounds_tiling": [ "repeat" ]
},
"colors": {
"frame": "green",
"tab_background_text": "black"
}
}
Das folgende Beispiel verwendet die meisten der verschiedenen Werte für theme.colors:
"theme": {
"images": {
"theme_frame": "weta.png"
},
"colors": {
"frame": "darkgreen",
"tab_background_text": "white",
"toolbar": "blue",
"bookmark_text": "cyan",
"toolbar_field": "orange",
"toolbar_field_border": "white",
"toolbar_field_text": "green",
"toolbar_top_separator": "red",
"toolbar_bottom_separator": "white",
"toolbar_vertical_separator": "white"
}
}
Dies ergibt einen Browser, der so aussieht:

In diesem Screenshot ist "toolbar_vertical_separator" die weiße vertikale Linie in der URL-Leiste, die das Lesezeichen-Symbol vom Rest der Symbole trennt.
Dieses Beispiel (Firefox 153+) kombiniert Bildhintergründe mit einem CSS-Linearverlauf:
"theme": {
"images": {
"additional_backgrounds": [
"background-image1.svg",
"background-image2.svg",
{ "linear-gradient": "to bottom, #FF6BBA -20%, #FFC999 50%" }
]
},
"properties": {
"additional_backgrounds_alignment": ["right top", "left top", "right top"],
"additional_backgrounds_tiling": ["no-repeat", "no-repeat", "repeat-x"],
"additional_backgrounds_size": ["auto", "auto", "auto 144px"]
}
}
Dies führt zu:
background-image1.svg, das oben rechts in der natürlichen Größe angezeigt wird.background-image2.svg, das oben links in der natürlichen Größe angezeigt wird.- Der
linear-gradient, der von oben rechts gekachelt horizontal über den Header (repeat-x) zeigt und auf 144 Pixel Höhe skaliert wird (die Breite ist automatisch). Der Verlauf wechselt von Rosa (#FF6BBA) am oberen Teil zu Pfirsich (#FFC999) am unteren Teil.
Browser-Kompatibilität
Chrome Kompatibilität
In Chrome:
-
colors/toolbar_textwird nicht verwendet, nutzen Sie stattdessencolors/bookmark_text. -
images/theme_frameverankert das Bild oben links im Header und kachelt das Bild, wenn es den Headerbereich nicht ausfüllt. -
Alle Farben müssen als Array von RGB-Werten angegeben werden, wie in folgendem Beispiel:
json"theme": { "colors": { "frame": [255, 0, 0], "tab_background_text": [0, 255, 0], "bookmark_text": [0, 0, 255] } }
Ab Firefox 59 werden sowohl die Array-Form als auch die CSS-Farbform für alle Eigenschaften akzeptiert. Davor erforderten colors/frame und colors/tab_background_text die Array-Form, während andere Eigenschaften die CSS-Farbform erforderten.































