CSS   发布时间:2022-04-17  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了css – 如何“破解”Thunderbird Lightning扩展以完全着色类别大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
(注意:然我不完全确定在SuperUser上是否更好地问这个问题,但我猜你可能不得不在xpi / jar文件中使用css设置,这应该使它适合SO.) @H_59_2@mozilla Thunderbird的日历扩展,Lightning,将为不同的日历使用不同的颜色,并使用一个窄的垂直条作为类别颜色:(浅蓝色作为日历颜色,红色作为类别颜色)

我想知道的是我如何改变/“黑客”css样式 – 肯定 – 必须与此相关联,埋在插件目录中的某处,以便在上面的示例中,事件将是完全的红色的.

谁知道如何实现这一目标?

解决方法

category-overlay.png图像仅仅是一个渐变叠加,以使类别栏看起来正确.

这里有两个选择.一个更容易但不可靠,另一个更难:

选项A:简单

在$profile / chrome /目录中创建userChrome.css.它应包含以下内容:

@H_673_18@ .calendar-color-box[categories~="mycategory"],.calendar-event-box-container[categories~="mycategory"] { BACkground-color: #abc123 !important; }

您需要为要更改颜色的每个类别执行此操作.请注意,在“闪电”选项中更改类别的颜色不会更改您在此处设置的类别颜色.

选项B:更完整

你需要在这里修改lightning.xpi中的一些文件.此解决方案仅需要您在Lightning中设置类别颜色,并且还适用于新添加的类别.请注意,这种方式没有类别的事件是透明的,如果你想要更多,你必须自己做.

>使用zip程序打开lightning.xpi
>输入目录chrome /
>使用zip程序打开包含calendar.jar
>下降到内容/日历/
>打开calendar-multiday-view.xml

>搜索“calendar-color-box”并将其从class属性中删除
>上面几行有一个< content>标签,添加class =“category-color-box”

>打开calendar-month-view.xml和calendar-view-core.xml并执行相同操作
>将文件保存回calendar.jar
>将calendar.jar保存回lightning.xpi
>安装修改后的lightning.xpi

如果你想看一个补丁,这适用于最新的comm-central源:

@H_673_18@diff --git a/calendar/base/content/calendar-month-view.xml b/calendar/base/content/calendar-month-view.xml --- a/calendar/base/content/calendar-month-view.xml +++ b/calendar/base/content/calendar-month-view.xml @@ -52,21 +52,20 @@ <bindings id="calendar-month-view-bindings" xmlns="http://www.mozilla.org/xbl" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:xbl="http://www.mozilla.org/xbl"> <binding id="calendar-month-day-box-item" extends="chrome://calendar/content/calendar-view-core.xml#calendar-editable-item"> - <content mousethrough="never" tooltip="itemTooltip"> + <content mousethrough="never" tooltip="itemTooltip" class="category-color-box"> <xul:vbox flex="1"> <xul:hbox> <xul:box anonid="event-container" - class="calendar-color-box" xbl:inherits="calendar-uri,calendar-id" flex="1"> <xul:box class="calendar-event-SELEction" orient="horizontal" flex="1"> <xul:stack anonid="eventbox" class="calendar-event-box-container" xbl:inherits="readonly,flashing,alarm,allday,priority,progress,status,calendar,categories" flex="1"> <xul:hbox class="calendar-event-details"> diff --git a/calendar/base/content/calendar-multiday-view.xml b/calendar/base/content/calendar-multiday-view.xml --- a/calendar/base/content/calendar-multiday-view.xml +++ b/calendar/base/content/calendar-multiday-view.xml @@ -2119,20 +2119,19 @@ ]]></handler> </handlers> </binding> <!-- - An individual event box,to be inserted into a column. --> <binding id="calendar-event-box" extends="chrome://calendar/content/calendar-view-core.xml#calendar-editable-item"> - <content mousethrough="never" tooltip="itemTooltip"> + <content mousethrough="never" tooltip="itemTooltip" class="category-color-box"> <xul:box xbl:inherits="orient,width,height" flex="1"> <xul:box anonid="event-container" - class="calendar-color-box" xbl:inherits="orient,readonly,categories,calendar-uri,calendar-id" flex="1"> <xul:box class="calendar-event-SELEction" orient="horizontal" flex="1"> <xul:stack anonid="eventbox" align="stretch" class="calendar-event-box-container" flex="1" xbl:inherits="context,parentorient=orient,categories"> diff --git a/calendar/base/content/calendar-view-core.xml b/calendar/base/content/calendar-view-core.xml --- a/calendar/base/content/calendar-view-core.xml +++ b/calendar/base/content/calendar-view-core.xml @@ -46,21 +46,21 @@ xmlns="http://www.mozilla.org/xbl" xmlns:html="http://www.w3.org/1999/xhtml" xmlns:xul="http://www.mozilla.org/keymaster/gatekeeper/there.is.only.xul" xmlns:xbl="http://www.mozilla.org/xbl"> <binding id="calendar-editable-item"> <content mousethrough="never" tooltip="itemTooltip" - tabindex="-1"> + tabindex="-1" + class="category-color-box"> <xul:vbox flex="1"> <xul:hbox> <xul:box anonid="event-container" - class="calendar-color-box" xbl:inherits="calendar-uri,calendar-id" flex="1"> <xul:box class="calendar-event-SELEction" orient="horizontal" flex="1"> <xul:stack anonid="eventbox" class="calendar-event-box-container" flex="1" xbl:inherits="readonly,categories"> <xul:hbox class="calendar-event-details">

选项C:更改Javascript

这将是最好的工作黑客,然它需要javascript更改.按选项B中所述打开calendar.jar并查看calendar-views.js,有两个函数:updateStyleSheetForViews()和updateStyleSheetForCategory().我会把这个留给想要自己修补它的人,但想法是为.calendar-color-box [categories~ = …]添加一个规则,如果有类别,它会覆盖默认规则.这样,如果没有设置类别,则使用日历颜色,否则使用所需的类别颜色.

玩得开心 :)

大佬总结

以上是大佬教程为你收集整理的css – 如何“破解”Thunderbird Lightning扩展以完全着色类别全部内容,希望文章能够帮你解决css – 如何“破解”Thunderbird Lightning扩展以完全着色类别所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。