2013-03-06 43 views
1

我正在玩XUL編寫的Firefox擴展,並且想要自定義文本框元素的樣式。如何使用CSS設置XUL文本框的樣式:focus

這裏是我到目前爲止(CSS文件)來:

textbox.custom-style { 
    -moz-appearance: none; 
    border-radius: 3px; 
    box-shadow: 0 1px #CCC inset; 
    background: #FFF; 
    border : solid 1px #CCC; 
} 

風格適用正確,但是當我加入這個規則來改變風格聚焦文本框,它似乎並不上班。

textbox.custom-style:focus { 
    border : solid 1px #ACC; 
} 

我試過相同的規則按鈕元素,它似乎工作確定(當我「標籤」的按鈕,它就會關注並更改其風格如預期)

那麼什麼我在這裏想念嗎?這是一個已知的錯誤?我環顧四周尋找錯誤報告或解決方法,但無濟於事。

回答

2

對於<textbox>元素,只要元素具有焦點,就會添加特殊屬性focused。您可以檢查該屬性的存在,以確定該元素是否具有樣式表中的焦點。它將具有值true

這是因爲實際上重點在於<html:input>元素,它在<textbox>元素內。

+0

所以你的意思是我應該加上:'textbox.custom-style [focused = true] {}' – sitifensys 2013-03-06 08:40:08

+0

你是對的,它的工作原理。這應該記錄在某處,因爲它並不那麼明顯。 – sitifensys 2013-03-06 08:45:51

+0

它記錄在https://developer.mozilla.org/en-US/docs/XUL/Tutorial/Focus_and_Selection#Changing_the_focus – 2013-03-06 09:05:07