2011-11-01 34 views
0

我想把一個樣式放到一個選擇框中,我嘗試了下面的代碼,但問題是在標籤選項中使用較少和升起的字母時,它不會更改寬度樣式選擇框,並且它是固定的。如何用'width =「auto」'來完成?將樣式應用於選擇框,爲什麼它不起作用?

DEMO:http://jsfiddle.net/uG3gq/

<div class="select_box" style="margin: 10px 5px 0 5px;"> 
    <select name="type_star"> 
     <option disabled="disabled" value="">Select</option> 
     <option>Ttttttttttttttttttttt</option> 
     <option>Aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa</option> 
     <option>B</option> 
     <option>C</option> 
    </select> 
</div> 

.select_box { 
    overflow:hidden; 
    background:url(http://img4up.com/up2/17845058228414984898.png) no-repeat right #9ff; 
    height:24px; 
    font:13px Tahoma,Arial,Helvetica,Sans-serif; 
    color:#888888; 
    padding:0; 
} 
.select_box select { 
    background:transparent; 
    padding:0 0 0 0; 
    border:1px soild #666; 
    font-size:16px; 
    color:#888888; 
    height:26px; 
    -webkit-appearance:none; 
    outline: none; 
} 

回答

1

您可以離開它沒有設置明確的寬度,讓瀏覽器自動處理的寬度。在這種情況下,瀏覽器將確定最長的選項並根據該選項設置選擇元素的寬度。或者你可以設置它的寬度,如width=200px;,這將給出一個明確的寬度。

除非你想要寫一些JavaScript來確定最長的選項,並動態地設置寬度,我不認爲這是可能的(據我所知)

+0

在我的代碼如何解決這些?(請給我例如在我代碼) – JimBo

+0

看看here.http://stackoverflow.com/questions/198670/jquery-select-box-and-loop-help – Chin

相關問題