- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
(顺便说一句,什么叫最大的波兰语和英语在线帮助开发者插件?)
想知道详细的结构元素:tabbrowser-tabs、arrowscrollbox、.tabs-newtab-button。我想看看他们有什么争论,尤其是类(Class)。在文件 chrome://browser/content/tabbrowser.xml 中,并非所有内容都不是很清楚。我对 moz-binging 了解不够。
我需要它(除其他外):
1 这样的风格:
#tabbrowser-tabs > arrowscrollbox > * {
padding: 0 !important; /* gruby HAK na odstepy z prawej i lewej */
}
他可以删除可滚动标签栏左侧和右侧的填充。我想确切地知道哪个元素有 paddingi,所以它不使用通用选择器。
2 这样的风格:
/* przyciski przewijania paska kart */
.tabbrowser-arrowscrollbox > .scrollbutton-up,
.tabbrowser-arrowscrollbox > .scrollbutton-down {
margin: 0 !important;
padding: 0 !important;
width: 1px !important;
list-style-image: none !important;
}
.scrollbutton-up {
box-shadow: 4px 4px 7px 2px rgba(0, 0, 0, 0.38) !important;
}
.scrollbutton-down {
box-shadow: 4px -4px 7px 2px rgba(0, 0, 0, 0.38) !important;
}
.scrollbutton-up[disabled="true"], .scrollbutton-down[disabled="true"] {
/* gdy niepotrzebny Cien */
opacity: .0 !important;
box-shadow: none !important;
}
使滚动箭头不可见,但如果有任何卡片在选项卡栏之外,它们的阴影就会出现。我遇到的问题是,当打开卡片时,它会出现在选项卡栏的 View 之外(例如,用一只手打开多个链接,直到卡片屏幕上的空间用完)是选项卡的滚动按钮条以蓝色亮起,表示该卡已实际打开。但是,这种样式隐藏了按钮并留下了阴影。
我想为按钮添加样式。 Scrollbutton-down,它改变了我的风格的阴影颜色为蓝色,同时颜色上色。
3 标签栏样式的其余部分:
#TabsToolbar:not([collapsed="true"]) + #nav-bar {
margin-top: 0 !important; /* hak 1px - anty - wpuszczeniu paska kart na 1px pod pasek narzedzi */
}
#TabsToolbar {
height: 26px !important;
}
#tabbrowser-tabs {
min-height: 26px !important;
}
/* kolor paska kart */
#TabsToolbar {
background: -moz-linear-gradient(rgba(255, 255, 255, .0), rgba(0, 0, 0, .04)),
-moz-linear-gradient(rgba(220, 224, 234, 1), rgba(220, 224, 234, 1)) !important;
/* #2b83de #E5E5E5 rgba(200, 207, 224, 1) */
}
/* karty */
.tab-background-start,
.tab-background-end,
.tab-close-button,
#alltabs-button {
display: none !important;
}
/*.tabbrowser-tab,
.tab-stack,*/
.tab-background,
.tab-background-middle,
.tabs-newtab-button {
background: none !important;
margin: 0 !important;
padding: 0px !important;
}
.tabbrowser-tab:before { /* ukrywa kreski rozdzielajace */
display: none !important;
}
.tabbrowser-tab {
margin-bottom: 1px !important; /* to celowy efekt, ma być taki 1px odstęp podkreślający aktywną kartę */
}
.tab-content {
padding-left: 6px !important;
padding-right: 6px !important; /* tak naprawde to 10*/
}
/* kolory kart */
.tabbrowser-tab, .tabs-newtab-button {
/* zwykÃÂÃÂa i nowa Karta */
background: rgba(255, 255, 255, 0.2) !important;
background-image: -moz-linear-gradient(rgba(0, 0, 0, 0.2), transparent),
linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0)) !important;
background-position: -moz-calc(100% - 1px) -1px, 100% -1px !important;
background-repeat: no-repeat !important;
background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100%, 100% 100% !important;
}
tab.tabbrowser-tab[selected=true] {
box-shadow: 0px 0px 4px 3px rgba(2, 2, 2, 0.16) !important;
background: -moz-linear-gradient(rgba(255, 255, 255, 0.7), rgba(255, 255, 255, 0.4)),
linear-gradient(rgba(255, 255, 255, .0), rgba(0, 0, 0, .04)),
linear-gradient(rgba(240, 237, 244, 1), rgba(220, 227, 244, 1)) !important;
}
#tabbrowser-tabs tab.tabbrowser-tab:not([selected=true]):first-child {
/* pierwsza zwykÃÂÃÂÃÂÃÂ Karta */
background-image: -moz-linear-gradient(rgba(0, 0, 0, 0.2), transparent),
linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0)),
linear-gradient(rgba(0, 0, 0, 0.2), transparent),
linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0))!important;
background-position: -moz-calc(100% - 1px),
100%,
-moz-calc(0px),
1px !important;
background-repeat: no-repeat !important;
background-size: 1px 100%, 1px 100%, 1px 100%, 1px 100% !important;
}
#tabbrowser-tabs tab.tabbrowser-tab:not([selected=true]):last-child {
/* ostatnia zwykÃÂÃÂÃÂÃÂÃÂÃÂÃÂÃÂa Karta */
background-image: -moz-linear-gradient(rgba(0, 0, 0, 0.2), transparent),
linear-gradient(rgba(255, 255, 255, 0.5), rgba(255, 255, 255, 0)) !important;
background-position: 100%,
calc(100% - 1px) !important;
background-repeat: no-repeat !important;
background-size: 1px 100%, 1px 100% !important;
}
总体而言,它简化了样式选项卡栏。但是,新卡(如果没有足够的打开选项卡)。 Tabs-newtab-button 与这种样式一样太宽,您可能正在填充左侧和右侧。在普通卡片中,这些 paddingi 删除了一些东西。 Tab-background-*,并且可能 newtab 已经以其他方式命名。 3.a当卡片数量接近边界之后出现不同版本的新卡片按钮(没有卡片样式)它会无限期地从一种样式跳到另一种样式。这是在固定 2 张卡时完成的,尽管它也会影响分辨率,因为当我缩小 Firefox 窗口时,我没有注意到,这不排除它可能发生。
4 顺便说一句:
.tab-content {
padding-left: 6px !important;
padding-right: 6px !important; /* tak naprawde to 10*/
}
这个样式不得不在文本右侧做 6px padding,然而,设置为 10px。没有逐个像素的变化,也许是其他计算、脚本或其他东西?
对于 1,2 和 3,我会建议,只是不知道如何获得这种结构。
例如,元素 tab.tabbrowser-tab 有 THEMSELVES 是添加 -moz-binding 的其他元素: url('chrome://browser/content/tabbrowser.xml#tabbrowser-tab'):
<content context="tabContextMenu" closetabtext="Close Tab">
<xul:stack class="tab-stack" flex="1">
<xul:hbox class="tab-background" xbl:inherits="pinned,selected,titlechanged,fadein">
<xul:hbox class="tab-background-start" xbl:inherits="pinned,selected,titlechanged">
</xul:hbox>
<xul:hbox class="tab-background-middle" xbl:inherits="pinned,selected,titlechanged">
</xul:hbox>
<xul:hbox class="tab-background-end" xbl:inherits="pinned,selected,titlechanged">
</xul:hbox>
</xul:hbox>
<xul:hbox class="tab-content" xbl:inherits="pinned,selected,titlechanged" align="center">
<xul:image class="tab-throbber" xbl:inherits="fadein,pinned,busy,progress,selected" role="presentation" layer="true">
</xul:image>
<xul:image class="tab-icon-image" xbl:inherits="src=image,fadein,pinned,selected" anonid="tab-icon-image" validate="never" role="presentation">
</xul:image>
<xul:label class="tab-text tab-label" flex="1" anonid="tab-label" xbl:inherits="value=visibleLabel,crop,accesskey,fadein,pinned,selected" role="presentation">
</xul:label>
<xul:toolbarbutton class="tab-close-button close-icon" anonid="close-button" xbl:inherits="fadein,pinned,selected">
</xul:toolbarbutton>
</xul:hbox>
</xul:stack>
</content>
如何获取这些元素?出于某种原因,我找不到 tabbrowser-tabs、arrowscrollbox、.tabs-newtab-button 的内容。请帮忙。提供这些元素的内容或我可以检查内容的工具。
最佳答案
要在运行时探索 绑定(bind),最好的方法仍然是 DOM Inspector .
使用 File/Inspect Chrome Document
菜单项选择例如一个 browser.xul 实例。从那里,选择您感兴趣的元素,例如玩右边的面板(通过切换到相应的 View 来检查 XBL 绑定(bind),或包括原始位置等的 CSS 规则)。DOM 检查器还显示匿名节点,即由 XBL 绑定(bind)生成的节点。匿名节点以红色显示。
然后您可以在 DXR 上交叉引用资料或 MXR , 提供的东西是核心功能,而不是由其他附加组件添加。
根据这些信息,您可以构建例如CSS 选择器。大多数匿名节点(至少是那些源自核心绑定(bind)的节点)都有合理的 class
名称。例如。你可以做类似的事情(我只是通过查看下面的屏幕截图“构建”的)。
#urlbar .textbox-contextmenu {
display: none;
}
至于文档:它并没有比 MDN 更好,诚然,它在许多领域都相当缺乏。不要期望甚至有特定绑定(bind)的文档;源代码是文档。
关于javascript - 如何知道隐藏在 moz-binding 下的 XUL 元素的结构?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23735619/
我不知道该怎么做... function f1() { var x = 10; function f2(fx) { var x; x = 6;
早期绑定(bind)和后期绑定(bind)有什么区别? 最佳答案 简短的回答是,早期(或静态)绑定(bind)是指编译时绑定(bind),后期(或动态)绑定(bind)是指运行时绑定(bind)(例如
如何在 SwiftUI View 上使用 Binding(get: { }, set: { }) 自定义绑定(bind)与 @Binding 属性。我已成功使用此自定义绑定(bind)与 @State
我经常发现自己遇到问题,即控件的两个(相关)值被更新,并且两者都会触发昂贵的操作,或者控件可能会暂时处于不一致的状态。 例如,考虑一个数据绑定(bind),其中两个值 (x,y) 相互减去,最终结果用
我想通过我的 ViewModel 控制我的一个窗口的高度和宽度。 这看起来很简单。 但没有。它不起作用。 它检查 ViewModel 的 Width但不是 Height . 奇怪的是,如果我切换 W
UI5中一次性绑定(bind)和单向绑定(bind)有什么区别? 是否有任何用户特定的用例我会使用它们? 我无法从文档中获得太多信息。 最佳答案 单程 它的作用:单向数据流。模型数据的变化(例如通过
(define make (lambda (x) (lambda (y) (cons x (list y))))) (let ((x 7) (p (make 4))) (cons
尽管我或多或少地了解什么是语言绑定(bind),但我很难理解它们是如何工作的。 例如,谁能解释一下如何为 WinAPI 制作 Java 绑定(bind)? 最佳答案 如果您搜索 Foreign Fun
谁能解释为什么我可以重新绑定(bind)列表但不能+? (binding [list vector] (list 1 3)) (binding [list +] (list 1 3)) (bi
我真的很喜欢 Caliburn 和命名约定绑定(bind),我很惊讶 可见性与“CanNAME”约定用于保护 Action 的方式不同。 据我所知, BooleanToVisibilityConver
我了解动态绑定(bind)的实现方式以及静态绑定(bind)和动态绑定(bind)之间的区别,但我只是无法理解动态绑定(bind)的定义。基本上它是一种运行时绑定(bind)类型。 最佳答案 基本上,
http://jsfiddle.net/3NRsd/ var foo = $("div").bind("click", function() { $("div").animate({"hei
这个问题我快疯了...我有一个用户控件,它有一个用于插入操作的 FormView 和一个用于所有其他操作的 GridView。 在这两个控件中,我都有一个 DropDownList,如下所示: '
我有一个绑定(bind)到 ListBox 的地址的 ObservableCollection。然后在 ItemTemplate 中,我使用 {Binding .} 绑定(bind)到当前地址记录。这
如果我有以下简单的 js/knockout 代码: .js( View 模型): var image = ko.observable('http://placehold.it/300x150'); 看
我正在 aurelia 上开发一个自定义属性,让用户在输入文本区域时从列表中进行选择。例如,用法将是这样的: 正如您可能注意到的,auto-complete是属性。现在,当我想显示提示时,我想在自定
我正在使用 EventEmitter2作为我的应用程序内部的消息总线。现在我需要绑定(bind)和取消绑定(bind)一些事件处理程序。因为我也希望他们bind将它们添加到给定的上下文中,我最终得到以
我有以下函数调用: $(".selector").on("click", callback.bind(this, param1, param2)); 在我的回调函数中,我想使用绑定(bind)的 th
我目前正在试验新的编译绑定(bind),并且(再次)达到了我在拼图中遗漏了一个小问题:为什么我必须调用 Bindings.Update?直到现在,我还认为实现 INotifyPropertyChang
我正在阅读一本关于编写 JavaScript 框架的书,并找到了这段代码。但是我不明白它是如何工作的,尤其是 bind.bind 的用法?有人知道吗? var bind = Function.prot
我是一名优秀的程序员,十分优秀!