- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在开发一个 flex 应用程序。该元素有一个带有声明的全局样式表:
s|DataGroup{
alternating-item-colors:#FFFFFF,#F7F7FA;
}
现在,在我的一个对话框中,我想要一个具有不同配色方案的 DropDownList。我尝试了很多方法,使用属性并为我的 DropDownList 使用样式。
<s:DropDownList id="orientationEntry" width="200"
dataProvider="{model.orientationList}"
styleName="blackDropDown"
alternatingItemColors="[#222222,#111111]"
>
在我的样式表中(我尝试了很多不同的东西):
.blackDropDown s|DataGroup {
alternating-item-colors: #222222,#111111;
}
#orientationEntry s|DataGroup {
alternating-item-colors: #222222,#111111;
}
s|DropDownList#orientationEntry s|DataGroup {
alternating-item-colors: #222222,#111111;
}
但是这些都没有任何作用。我的下拉列表总是显示白色和浅灰色线条。为了让它工作(即有黑色和深灰色线条),我需要从全局样式表中删除 s|DataGroup
声明。但我想避免这种情况。对于更具体的情况不能覆盖一般性声明,我感到有些惊讶。
所以问题是:如何在不重新定义应用程序所有数据组的默认颜色的情况下覆盖 DropDownList 弹出列表的背景颜色?
或者,如何在不更改全局样式表的情况下取消全局 s|DataGroup
声明?
最佳答案
我认为你可以通过 as3 来设置它,但是如果你想要这个可重用的方法是:
基于 DropDownList 创建一个新的 MXML 皮肤。
搜索(在一些编辑器中CTRL+O,写scroller然后按回车或点击进入):
<s:Scroller id="scroller" left="0" top="0" right="0" bottom="0" hasFocusableChildren="false" minViewportInset="1">
<!--- @copy spark.components.SkinnableDataContainer#dataGroup-->
<s:DataGroup id="dataGroup" itemRenderer="spark.skins.spark.DefaultItemRenderer">
<s:layout>
<s:VerticalLayout gap="0" horizontalAlign="contentJustify" requestedMinRowCount="1" requestedMaxRowCount="6"/>
</s:layout>
</s:DataGroup>
</s:Scroller>
设置指定颜色的属性:
alternatingItemColors="{[0x222222, 0x111111]}"
你现在有这个:
<!--- @private -->
<s:Scroller id="scroller" left="0" top="0" right="0" bottom="0" hasFocusableChildren="false" minViewportInset="1">
<!--- @copy spark.components.SkinnableDataContainer#dataGroup-->
<s:DataGroup id="dataGroup" alternatingItemColors="{[0x222222, 0x111111]}" itemRenderer="spark.skins.spark.DefaultItemRenderer">
<s:layout>
<s:VerticalLayout gap="0" horizontalAlign="contentJustify" requestedMinRowCount="1" requestedMaxRowCount="6"/>
</s:layout>
</s:DataGroup>
</s:Scroller>
现在只需在您的组件中设置 skinClass(我的示例在 pacakage skins 中):
<s:DropDownList id="ddlFiltros" width="237" height="30" buttonMode="true"
skinClass="skins.skin_dropdown"
dataProvider="{_arrayCamposFiltro}" labelField="label"
prompt="ELEGIR CAMPO" selectedIndex="-1"/>
这对于全局样式不受影响。
但是您可以按照自己的风格进行设置:
s|DataGroup{
alternating-item-colors:#FFFFFF,#F7F7FA;
}
.blackDropDown {
skinClass: ClassReference("skins.skin_dropdown");
}
而不是定义 skinClass,定义 styleName:
<s:DropDownList id="ddlFiltros" width="237" height="30" buttonMode="true"
styleName="blackDropDown"
dataProvider="{_arrayCamposFiltro}" labelField="label"
prompt="ELEGIR CAMPO" selectedIndex="-1"/>
你明白了:
关于css - DropDownList 和 DataGroup 之间的 Flex 4.6 颜色样式冲突,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26182797/
我有两个 ASP.Net 下拉列表,其中的值相同,根据用户输入的不同数据从数据库填充,并且每次都有动态大小。我的情况是,我希望禁用第二个下拉列表中已在第一个下拉列表中选择的任何选项。我做了一些谷歌,大
我有两个相关的模型。 public partial class bs_delivery_type { public decimal delivery_id { get; set; }
我需要能够根据先前 DropDownList 的选择来填充 DropDownList。 我注意到在 SO 上有很多类似的主题,不幸的是,我需要在不使用 AJAX 调用的情况下完成此操作,并且需要在 M
我无法在 ASP.NET MVC 应用程序的 Create View 中获得我们想要的功能。 我们的 Create View 中有两个 DropDownList。 一个是类别选择,第二个应该根据第一个
这个问题在这里已经有了答案: Easiest way to create a cascade dropdown in ASP.NET MVC 3 with C# (1 个回答) 关闭 9 年前。 加
有什么区别 DropDownList.ClearSelection(); 和 DropDownList.SelectedIndex = -1; 在使用下拉列表时? 编辑:我知道 MSDN 上提供的这些
这是一个常见问题,但我不知道如何使用 KendoUI 小部件和 Javascript 来解决它。我有一个 KendoGrid,其数据源来自对 Web 服务的 AJAX 调用。数据绑定(bind)到列。
我有一组问题供用户选择,其中一些问题有第二个选项列表可供选择。我的目标是有一个下拉列表,如果您选择其中一个在其 SecondaryChoiceList 中有项目的选项,那么第二个列表将出现在初始下拉列
我有一组问题供用户选择,其中一些问题有第二个选项列表可供选择。我的目标是有一个下拉列表,如果您选择其中一个在其 SecondaryChoiceList 中有项目的选项,那么第二个列表将出现在初始下拉列
我正在使用带有 ajax 工具包的 asp.net 3.5。 问题:我有一个自定义控件,在更新面板中有两个下拉列表。第一个 DDL 具有属性 AutoPostBack="true" 并且在选择时填充第
我在我的一个 ddl 上选择了其他选项,并且成功获得了该值,但同时我想在代码中的其他 ddl 上获得选项。我怎样才能获得其他 ddl 选项....?我在这里放置了我的问题的代码示例: (no
我们在我们的应用程序中使用自定义表单控件。当我们尝试在这个自定义表单控件中使用 asp dropdownlist 控件时,我得到了这个给定的异常。但是,当我使用 asp 文字控件时,我们不会收到此错误
我有两个 asp.net 下拉列表,我想用 Javascript 操作客户端。这两个下拉菜单位于模态打开内: function() 当 dropdown1.value == "me"时我想要禁用 dr
我有一个 WebForms 页面,上面有两个 DropDownList 控件,它们都包含 60-80 度的温度范围,一个用于加热,另一个用于冷却。它们在 .aspx 中声明为: 每个列表的值都使用
抱歉这个愚蠢的问题,我以前使用过 MVC,但以前从未做过这样的事情。 好吧,假设我正在实现一个门票系统,用户可以在特定时间和巴士上预订门票。 在“预订”页面中,我有2个DropDownList,其中一
我有一个 activeDropDownList 类型的字段,用户在其中选择所需的月份,并且 View “mobilizer”处理所选月份的大量查询。 但是,渲染页面后,activeDropDownLi
我试图禁用列表框中的多选,但是当我调用removeAttr('multiple')时,它会将我的列表框变成下拉列表。我不需要下拉菜单,我想保留列表框。我该如何调整才能实现这一目标?谢谢。 @Ht
我需要在 WinForm 上显示一些韩文文本。文本在我的 ListBox 控件中显示良好。相同的文本不会显示在我的 DropDownList 控件中。两个控件的字体均为 Arial 8pt。两个控件的
我有一个简单的问题。我有一个 dropDownList,我试图用存储过程中的 id 填充它。然而它似乎不起作用。这是我的下拉列表: Select new CaseFile:
绑定(bind)后下拉菜单显示以下值: 第一优先级低 第二优先级中 第三优先级高 每次回发后下拉列表显示以下值: 第一优先级低 第二优先级中 第三优先级高 第一优先级低 第二优先级中 第三优先级高 这
我是一名优秀的程序员,十分优秀!