Хоть шаги уже далеко не первые – я не смог с первого раза вспомнить – как же подключить свой собственный CSS-файл. А может я этого никогда и не знал???

Вот структура директорий:

  1.  
  2.  
  3. ls -R newapp/
  4. newapp/:
  5. application.ini chrome defaults newapp.xul.kpf
  6.  
  7. newapp/chrome:
  8. chrome.manifest content skin
  9.  
  10. newapp/chrome/content:
  11. newapp.xul
  12.  
  13. newapp/chrome/skin:
  14. newapp.css
  15.  
  16. newapp/defaults:
  17. preferences
  18.  
  19. newapp/defaults/preferences:
  20. prefs.js
  21.  

И как только я не пытался подключить к имеющемуся уже:

xml
  1.  
  2. <?xml-stylesheet href="chrome://global/skin/" type="text/css"? >
  3.  
  4.  

еще и свой собственный

xml
  1.  
  2. <?xml-stylesheet href="chrome://newapp/skin" type="text/css"?>
  3.  

Да все безрезультатно – ну не действуют на окно эти стили!!!!

Как всегда… Гуглинг, эксперименты, ЭниКейЗ …

Выход, хоть и не самый красивый:

Не забываем добавить скины в хром!

  1.  
  2. max@maximus:~$ cat newapp/chrome/chrome.manifest
  3. content newapp file:content/
  4. skin newapp classic/1.0 file:skin/
  5.  
  6.  
  1. max@maximus:~$ cat newapp/chrome/content/newapp.xul
xml
  1.  
  2. <?xml version="1.0"?>
  3. <!-- ?xml-stylesheet href="chrome://global/skin/" type="text/css"? -->
  4.  
  5. <?xml-stylesheet href="chrome://newapp/skin" type="text/css"?>
  6.  
  7. <window id="main" title="Новое приложение" width="300" height="300"
  8. xmlns="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul">
  9. <hbox class="tops">
  10. <caption label="Hello World"/>
  11. </hbox>
  12.  
  13. </window>
  14.  

А закомментированный выше глобальный стиль импортируем в наш собственный:

  1. max@maximus:~$ cat newapp/chrome/skin/newapp.css
css
  1. @import('chrome://global/skin');
  2.  
  3. window{
  4. background-color: black;
  5. }
  6. caption{
  7. color: white;
  8. }
  9.  
  10. hbox.tops{
  11. background: #484848;
  12. }
  13.  

Вуаля! Вот вам и первое XUL-приложение!

Комменты

Добавить коммент