簡體   English   中英

使用CSS - ExtJs進行鼠標懸停時如何更改面板上的圖像?

[英]How to change image on panel when doing mouseover using CSS - ExtJs?

我正在嘗試使用CSS或SASS進行鼠標懸停/鼠標切換時更改圖像。 但是,為了完成這一點,我總能做到:

header = panel.getHeader()。getEl(); 然后這樣做:

        //mouse enter event
        header.on('mouseover', function (e) {
       .......
       .......
       }, me);

        //mouseleave event
        header.on('mouseleave', function (e) {
        ........
        }, me);

但是,我正在嘗試使用CSS或SASS完成相同的功能。

基本上:

a)加載手風琴時,默認情況下應顯示所有圖像。 (面板1應顯示圖像 1)。

b)如果面板展開,則應顯示圖像2,並且應顯示其折疊圖像1(在面板1上 - 與其他面板相同的功能)。

c)在鼠標懸停時應顯示圖像2,在鼠標左鍵上應顯示圖像1 (在面板1上)。

這是我到目前為止使用的CSS,它在鼠標懸停/鼠標離開時在第一個面板上工作,但我不確定如何顯示圖像。

// Show IMAGE 1 by default
.x-panel-header-custom1{ 
url('http://www.iconhot.com/icon/png/brush-intense-messenger/256/msn-web-
2.png');
}

// SHOW IMAGE 2 when expanded or onmouseover
.x-panel-header-custom1:hover{
 background: red;
background-image: 
 url('https://image.flaticon.com/icons/png/128/12/12195.png'); 
}

誰能告訴我我錯過了什么?

這是工作的 FIDDLE

注意:我不想對圖像使用Font awesome,任何其他圖像都很好,就像我正在使用的那樣。 非常感謝提前!

行注釋在CSS中無效(塊注釋) - 實際上你讓我質疑我的理智,直到我發現它。

當刪除麻煩的行注釋時,如果你查看html,你清楚地看到

.x-accordion-item .x-accordion-hd

選擇器覆蓋

.x-panel-header-custom1

選擇器,因此如果您希望代碼工作,則必須在所有類上使用!important 像這樣:

.x-panel-header-custom1 {
 background-image: url('http://www.iconhot.com/icon/png/brush-intense-messenger/256/msn-web-2.png') !important;
}

.x-panel-header-custom1:hover {
  background: red;
 background-image: url('https://image.flaticon.com/icons/png/128/12/12195.png') !important; 
}

.x-panel-header-custom1-collapsed {
  background-image: url('https://image.flaticon.com/icons/png/128/12/12195.png') !important;
}

另外,我注意到你的第三個選擇器(折疊了一個)缺少標題字符串。

小提琴

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM