Реализация таблиц стилей на основе ОС в XUL - PullRequest
3 голосов
/ 05 сентября 2011

Я чистый друг GUI. К сожалению, по какой-то причине мне нужно переписать таблицы стилей "chrome: // global / skin".

Какой самый лучший метод, для реализации различных таблиц стилей на основе ОС в xul-документах - например. для графического интерфейса, такого как windows xp, windows aero или macosx aqua (overlay-aero.css, overlay-aqua.css ...).

Предоставляет ли Mozilla какие-либо стандарты для реализации таблиц стилей на основе ОС?

Ответы [ 2 ]

5 голосов
/ 06 сентября 2011

Не зная, как вы намереваетесь накладывать стили: да, обычный подход будет использовать manifest flags . Например, если вы определите оверлей стиля в файле chrome.manifest вашего расширения, вы сделаете это следующим образом:

style chrome://browser/content/browser.xul chrome://myExtension/skin/overlay-win.css os=WINNT
style chrome://browser/content/browser.xul chrome://myExtension/skin/overlay-osx.css os=Darwin
style chrome://browser/content/browser.xul chrome://myExtension/skin/overlay-linux.css os=Linux

Вы также можете использовать специфичные для Mozilla медиа-функции , чтобы различать различные темы одной ОС в вашей таблице стилей. Например:

@media all and (-moz-windows-classic)
{
  ...
}
@media all and (-moz-windows-theme: aero)
{
  ...
}
@media all and (-moz-windows-compositor)
{
  ...
}
0 голосов
/ 06 сентября 2011

Звучит так, будто вы хотите создать свою собственную тему Firefox (обязательно расширение, состоящее из файлов CSS и изображений, которые заменяют стандартный внешний вид браузера).В Центре разработки Mozilla есть целый раздел: https://addons.mozilla.org/en-US/developers/docs/how-to/theme-development

...