主题
类型 | 对象 |
---|---|
必选 | 否 |
清单版本 | 2 或更高 |
示例 |
json
|
使用 theme 键来定义一个静态主题,应用于 Firefox。
注意:如果您想将主题包含在扩展中,请参阅
API。theme
注意:自 2019 年 5 月起,主题需要进行签名才能安装 (Firefox 错误 1545109)。请参阅 签名和分发您的附加组件 获取更多详细信息。
注意:基于 GeckoView 的 Android 版 Firefox 新版本正在开发中。一个 预发布版本 可供使用。预发布版本不支持主题。
图像格式
以下图像格式在所有主题图像属性中受支持
- JPEG
- PNG
- APNG
- SVG(动画 SVG 从 Firefox 59 开始支持)
- GIF(不支持动画 GIF)
语法
theme 键是一个对象,它接受以下属性
名称 | 类型 | 描述 |
---|---|---|
images |
对象 |
从 Firefox 60 开始可选。在 Firefox 60 之前是必需的。 一个 JSON 对象,其属性表示要在浏览器的不同部分显示的图像。有关此对象可以包含的属性的详细信息,请参阅 |
colors |
对象 |
必需的。 一个 JSON 对象,其属性表示浏览器的不同部分的颜色。有关此对象可以包含的属性的详细信息,请参阅 |
properties |
对象 |
可选 此对象具有影响 |
images
所有 URL 相对于 manifest.json 文件,不能引用外部 URL。
图像高度应为 200 像素,以确保它们始终垂直填充标题空间。
名称 | 类型 | 描述 |
---|---|---|
theme_frame |
字符串 |
要添加到标题区域并固定在标题区域右上角的前景图像的 URL。 注意:Chrome 将图像固定在标题的左上角,如果图像没有填充标题区域,则会平铺图像。 在桌面版 Firefox 60 及更高版本中可选。在 Android 版 Firefox 中是必需的。 |
additional_backgrounds |
Array of String |
警告: 用于将其他背景图像添加到标题区域并在 可选的。 默认情况下,所有图像都固定在标题区域的右上角,但它们的排列和重复行为可以通过 |
colors
这些属性定义了用于浏览器的不同部分的颜色。它们都是可选的。这些属性如何影响 Firefox UI,如下所示
|
注意:当某个组件受多个颜色属性影响时,这些属性按优先级顺序排列。
所有这些属性都可以指定为包含任何有效 CSS 颜色字符串(包括十六进制)的字符串,或者为 RGB 数组,例如 "tab_background_text": [ 107 , 99 , 23 ]
。
在 Android 版 Firefox 中,可以使用
- 完整的十六进制表示法,即 #RRGGBB 仅。alpha 和简写语法,如 #RGB[A],不受支持。
- 函数表示法(RGB 数组),用于面向 Firefox 68.2 或更高版本的主题。
Android 版 Firefox 主题的颜色不能使用颜色名称指定。
名称 | 描述 |
---|---|
bookmark_text |
书签和查找栏中文本和图标的颜色。此外,如果未定义
注意:确保使用的任何颜色与 在未定义 参见示例json
|
button_background_active |
已按下工具栏按钮的背景颜色。 参见示例json
|
button_background_hover |
鼠标悬停在工具栏按钮上的背景颜色。 参见示例json
|
icons |
工具栏图标的颜色,不包括查找工具栏中的图标。
注意:确保使用的颜色与 参见示例json
|
icons_attention |
工具栏图标在关注状态下的颜色,例如加星标书签图标或已完成下载图标。
注意:确保使用的颜色与 参见示例json
|
frame |
标题区域背景的颜色,显示在 参见示例json
|
frame_inactive |
浏览器窗口处于非活动状态时标题区域背景的颜色,显示在 参见示例json
|
ntp_background |
新标签页的背景颜色。 参见示例json
|
ntp_card_background |
新标签页卡片的背景颜色。 参见示例json
|
ntp_text |
新标签页的文本颜色。
注意:确保使用的颜色与 参见示例json
|
popup |
弹出窗口的背景颜色(例如 URL 栏下拉菜单和箭头面板)。 参见示例json
|
popup_border |
弹出窗口的边框颜色。 参见示例json
|
popup_highlight |
弹出窗口内使用键盘突出显示的项目的背景颜色(例如选定的 URL 栏下拉菜单项)。
注意:建议定义 参见示例json
|
popup_highlight_text |
弹出窗口内突出显示项目的文本颜色。
注意:确保使用的颜色与 参见示例json
|
popup_text |
弹出窗口的文本颜色。
注意:确保使用的颜色与 参见示例json
|
sidebar |
侧边栏的背景颜色。 参见示例json
|
sidebar_border |
浏览器侧边栏的边框和分隔符颜色 参见示例json
|
sidebar_highlight |
内置侧边栏中突出显示行的背景颜色 参见示例json
|
sidebar_highlight_text |
侧边栏中突出显示行的文本颜色。
注意:确保使用的颜色与 参见示例json
|
侧边栏文本 |
侧边栏的文本颜色。
注意: 确保所使用的颜色与 参见示例json
|
tab_background_separator 已弃用 |
警告: 从 Firefox 89 开始, 背景标签的垂直分隔线的颜色。 参见示例json
|
tab_background_text |
非活动页面标签中显示的文本颜色。如果未指定
注意: 确保所使用的颜色与 参见示例json
|
tab_line |
选中标签线的颜色。 参见示例json
|
tab_loading |
标签加载指示器和标签加载突出的颜色。 参见示例json
|
tab_selected |
选中标签的背景颜色。当不使用时,选中标签颜色由 参见示例json
|
tab_text |
从 Firefox 59 开始,它代表选中标签的文本颜色。如果未指定
注意: 确保所使用的颜色与 参见示例json
|
toolbar |
导航栏、书签栏和选中标签的背景颜色。 这也设置了“查找”栏的背景颜色。 参见示例json
|
toolbar_bottom_separator |
将工具栏底部与下方区域分隔的线条颜色。 参见示例json
|
toolbar_field |
工具栏中字段的背景颜色,例如 URL 栏。 这也设置了 页面内查找 字段的背景颜色。 参见示例json
|
toolbar_field_border |
工具栏中字段的边框颜色。 这也设置了 页面内查找 字段的边框颜色。 参见示例json
|
toolbar_field_border_focus |
工具栏中字段的聚焦边框颜色。 参见示例json
|
toolbar_field_focus |
工具栏中字段的聚焦背景颜色,例如 URL 栏。 参见示例json
|
toolbar_field_highlight |
用于指示 URL 栏中当前文本选择(以及搜索栏,如果将其配置为单独的栏)的背景颜色。参见示例json
在此, |
toolbar_field_highlight_text |
用于绘制 URL 栏中当前选择的文本(以及搜索栏,如果将其配置为单独的框)的颜色。
注意: 确保所使用的颜色与 参见示例json
在此, |
toolbar_field_separator 已弃用 |
警告: 从 Firefox 89 开始, URL 栏内分隔符的颜色。在 Firefox 58 中,它被实现为 参见示例json
在此屏幕截图中, |
toolbar_field_text |
工具栏中字段中文本的颜色,例如 URL 栏。这也设置了 页面内查找 字段中文本的颜色。
注意: 确保所使用的颜色与 参见示例json
|
toolbar_field_text_focus |
工具栏中聚焦字段中文本的颜色,例如 URL 栏。
注意: 确保所使用的颜色与 参见示例json
|
toolbar_text |
工具栏文本的颜色。这也设置了“查找”栏中文本的颜色。
注意: 为了与 Chrome 兼容,请使用别名 参见示例json
|
toolbar_top_separator |
将工具栏顶部与上方区域分隔的线条颜色。 参见示例json
|
toolbar_vertical_separator |
书签工具栏中分隔符的颜色。在 Firefox 58 中,它对应于 URL 栏内分隔符的颜色。 参见示例json
|
别名
此外,此键接受各种属性,这些属性是上述属性之一的别名。这些别名是为了与 Chrome 兼容而提供的。如果给出了别名,并且也给出了非别名版本,则将从非别名版本获取值。
名称 | 别名 |
---|---|
bookmark_text |
toolbar_text |
properties
名称 | 类型 | 描述 |
---|---|---|
additional_backgrounds_alignment |
|
可选 一个枚举值数组,定义对应
如果未指定,则默认为 |
additional_backgrounds_tiling |
|
可选 一个枚举值数组,定义对应
如果未指定,则默认为 |
color_scheme |
|
可选 确定将哪种颜色方案应用于 chrome(例如,上下文菜单)和内容(例如,内置页面和网页的首选颜色方案)。选项包括
如果未指定,则默认为 |
content_color_scheme |
|
可选 确定将哪种颜色方案应用于内容(例如,内置页面和网页的首选颜色方案)。覆盖
如果未指定,则默认为 |
示例
基本主题必须定义一个添加到标题的图像、标题中使用的强调色以及标题中使用的文本颜色
"theme": {
"images": {
"theme_frame": "images/sun.jpg"
},
"colors": {
"frame": "#CF723F",
"tab_background_text": "#000"
}
}
可以使用多个图像来填充标题。在 Firefox 60 版本之前,使用空白或透明的标题图像以控制每个附加图像的放置
"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": "#ffffff"
}
}
您也可以使用重复的图像或图像来填充标题,在这种情况下,单个图像锚定在标题的中间顶部,并在标题的其余部分重复
"theme": {
"images": {
"additional_backgrounds": [ "images/logo.png"]
},
"properties": {
"additional_backgrounds_alignment": [ "top" ],
"additional_backgrounds_tiling": [ "repeat" ]
},
"colors": {
"frame": "green",
"tab_background_text": "#000"
}
}
以下示例使用 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"
}
}
它将为您提供一个看起来像这样的浏览器
在此屏幕截图中,"toolbar_vertical_separator"
是 URL 栏中的白色垂直线,将阅读器模式图标与其他图标隔开。
浏览器兼容性
BCD 表只在浏览器中加载
Chrome 兼容性
在 Chrome 中
colors/toolbar_text
不使用,请改用colors/bookmark_text
。images/theme_frame
将图像锚定到标题的左上角,如果图像没有填充标题区域,则平铺图像。- 所有颜色必须指定为 RGB 值数组,例如从 Firefox 59 开始,所有属性都接受数组形式和 CSS 颜色形式。在此之前,json
"theme": { "colors": { "frame": [255, 0, 0], "tab_background_text": [0, 255, 0], "bookmark_text": [0, 0, 255] } }
colors/frame
和colors/tab_background_text
需要数组形式,而其他属性需要 CSS 颜色形式。