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

标签 css apache-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;
}

后代伪选择器是否可行?

(当然我可以在 labelDisplay 上使用 styleName.open 属性,但我认为使用伪选择器是更优雅的解决方案)

最佳答案

这看起来可能是 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 中看到相同的行为。不太好,但至少有一个解决方法。

关于css - 带有 CSS 的 Flex 4 后代伪选择器,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2857776/

相关文章:

html - 内联 block 之间的间距

javascript - 带有缩放元素的响应式网格

css - 如何以编程方式在所有现有 CSS 选择器中插入父元素

css - 第 n 个嵌套元素的选择器

apache-flex - 使用嵌套对象作为数据提供者时如何在弹性树中获取项目父项?

javascript - 如何在移动 View 中隐藏一些导航链接?

javascript - 使用 js 在手机中屏蔽密码

html - CSS布局填补了缺失的空间

apache-flex - ActionScript 中的绑定(bind)如何工作?

apache-flex - 安装 Flex builder 后,Ubuntu 10 上的 Flash 播放器无法正常工作