2010-05-18 66 views
3

的Flex 4報價後代CSS選擇器和僞選擇,如:的Flex與CSS 4後代僞選擇

s|DropDownList:open { 
    font-size: 11; 
} 

s|DropDownList #labelDisplay { 
    font-size: 12; 
} 

但是,如果我結合這兩種的想要做這樣的事情,它似乎並沒有工作:

s|DropDownList:open #labelDisplay { 
    font-size: 13; 
} 

這是可能的後代僞選擇器?

(當然,我可以在labelDisplay使用styleName.open屬性,但我想用僞選擇一個更優雅的解決方案)

回答

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中看到相同的行爲。不是很漂亮,但至少有一個解決方法。

+0

FYI:我發現這個的Adobe漏洞報告:https://bugs.adobe.com/jira/browse/SDK-25271 – 2011-04-14 11:53:44

0

你試過

s|DropDownList:open, s|DropDownList #labelDisplay{ 
fontSize: 13; 

}

+0

這與OP試圖實現的不同。逗號符號: A,B {/ *樣式* /} 簡寫爲: 一個{/ *樣式* /} B {/ *樣式* /} – 2011-04-14 11:46:19