带有CSS的Flex 4后代伪选择器

时间:2010-05-18 13:43:02

标签: css flex css-selectors flex4

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属性,但我认为使用伪选择器是一种更优雅的解决方案)

2 个答案:

答案 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中看到相同的行为。不是那么漂亮,但至少有一种解决方法。