Flex 4提供后代css选择器和伪选择器,如:
s|DropDownList:open {
font-size: 11;
}
s|DropDownList #labelDisplay {
font-size: 12;
}
然而,如果我把这两个结合起来想做这样的事情,它似乎不起作用:
s|DropDownList:open #labelDisplay {
font-size: 13;
}
这是否可以使用后代伪选择器?
(当然我可以在styleName.open
上使用labelDisplay
属性,但我认为使用伪选择器是一种更优雅的解决方案)
答案 0 :(得分:0)
你试过吗
s|DropDownList:open, s|DropDownList #labelDisplay{
fontSize: 13;
}
答案 1 :(得分:0)
这看起来可能是一个Flex错误。
当尚未使用:open
伪选择器时,未发现后代样式,如您所发现:
s|DropDownList #labelDisplay {
font-size: 12;
}
s|DropDownList:open #labelDisplay {
font-size: 14;
}
但是,如果你使用伪选择器;甚至是空的,没有风格信息;它似乎解决了它:
s|DropDownList #labelDisplay {
font-size: 12;
}
/* this line fixes it */
s|DropDownList:open {}
s|DropDownList:open #labelDisplay {
font-size: 14;
}
我可以在sdk的4.0,4.1和4.5中看到相同的行为。不是那么漂亮,但至少有一种解决方法。