2013-10-25 37 views
3

我正在使用kendo UI。 要爲佔位應用CSS在文本框我給喜歡如何在kendoUI multiselect中爲佔位符提供css

::-webkit-input-placeholder { font-style:normal;   
      opacity:0.6; 
      color:grey; 
      font-size:14px; 
     } 

我想嘗試應用CSS爲多選佔位符。 任何人都可以幫助我如何做到這一點?

回答

1

什麼:

.k-multiselect-wrap { 
    font-style: normal; 
    opacity: 0.6; 
    color: grey; 
    font-size: 14px; 
} 

.k-multiselect { 
    font-style: normal; 
    opacity: 0.6; 
    color: grey; 
    font-size: 14px; 
} 

取決於你到底要

+0

如果我appy上面的CSS然後,如果我選擇多選中的任何元素,相同的CSS正在申請 – steve

+0

你想要它看起來像,因爲已被選中? – OnaBai

+0

最初佔位符顯示在multiselect中,我想通過上面的CSS來顯示它,並且它工作正常。如果我在多選中選擇任何記錄,那麼上面的css應用於選定的記錄並且它也顯示0.6不透明度並且灰色 – steve

2

使用此焦點之前到指定輸入的風格:

.k-multiselect-wrap>.k-input { 
    font-style: normal; 
    color: #C5C5C5; 
    font-size: 16px; 
    font-size: 1.6rem; 
} 

和這個來設置聚焦時,輸入的風格(當用戶鍵入):

.k-multiselect-wrap>.k-input:focus { 
    color: #000; /* specify the focused input color */ 
} 
1

對不起評論一年後 不管怎麼說,我發現用javascript同樣的問題的解決方案:

1.Subscribe對劍道多的變化情況進行選擇:

@(Html.Kendo().MultiSelectFor(model => model.MyVar)       
       .Events(events => events.Change("multiSelectChange")) 
       ) 

然後,你必須聲明JavaScript的

function multiSelectChange() { 
     var $multiSelectLists = $(".k-multiselect-wrap"); 
     $multiSelectLists.each(function (index) { 
      if ($(this).find("ul").children().length > 0) { 
       $(this).css({ "color": "gray", "opacity": "1.0" }); 
      } 
      else { 
       $(this).css({ "color": "gray", "opacity": "0.5" }); 
      } 
     }); 
    } 
功能

我在代碼中有各種多重選擇,所以我對所有選擇進行迭代。我知道我的代碼效率不高,因爲我遍歷了頁面上的所有多重選擇,並在每次更改其中一個CSS時更改每個CSS。理想情況下,你不應該迭代所有現有的多選,但這工作正常!