<select>
HTML要素からドロップダウン矢印を削除したい。例えば:
<select style="width:30px;-webkit-appearance: none;">
<option>2000</option>
<option>2001</option>
<option>2002</option>
...
</select>
Opera、Firefox、および Internet Explorer でそれを行う方法は?
<select>
HTML要素からドロップダウン矢印を削除したい。例えば:
<select style="width:30px;-webkit-appearance: none;">
<option>2000</option>
<option>2001</option>
<option>2002</option>
...
</select>
Opera、Firefox、および Internet Explorer でそれを行う方法は?
ハックやオーバーフローは必要ありません。IE のドロップダウン矢印の疑似要素があります。
select::-ms-expand {
display: none;
}
前述のソリューションは chrome ではうまく機能しますが、Firefox ではうまく機能しません。
Chrome と Firefox (IE ではなく) の両方でうまく機能するソリューションを見つけました。次の属性を SELECT 要素の CSS に追加し、必要に応じて margin-top を調整します。
select {
-webkit-appearance: none;
-moz-appearance: none;
text-indent: 1px;
text-overflow: '';
}
<select>
<option>one</option>
<option>two</option>
<option>three</option>
</select>
選択からドロップダウン矢印を削除する簡単な方法
select {
/* for Firefox */
-moz-appearance: none;
/* for Chrome */
-webkit-appearance: none;
}
/* For IE10 */
select::-ms-expand {
display: none;
}
<select>
<option>2000</option>
<option>2001</option>
<option>2002</option>
</select>
これを試して :
select {
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
padding: 2px 30px 2px 2px;
border: none;
}
JSビン: http: //jsbin.com/aniyu4/2/edit
Internet Explorer を使用している場合:
select {
overflow:hidden;
width: 120%;
}
または、 Choosen を使用できます: http://harvesthq.github.io/chosen/
これを試して:
HTML:
<div class="customselect">
<select>
<option>2000</option>
<option>2001</option>
<option>2002</option>
</select>
</div>
CSS:
.customselect {
width: 70px;
overflow: hidden;
}
.customselect select {
width: 100px;
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
}
これを試してみてください。
<style>
select{
border: 0 !important; /*Removes border*/
-webkit-appearance: none;
-moz-appearance: none;
appearance: none;
text-overflow:'';
text-indent: 0.01px; /* Removes default arrow from firefox*/
text-overflow: ""; /*Removes default arrow from firefox*/
}
select::-ms-expand {
display: none;
}
.select-wrapper
{
padding-left:0px;
overflow:hidden;
}
</style>
<div class="select-wrapper">
<select> ... </select>
</div>
非表示にすることはできませんが、overflow hidden を使用すると実際に非表示にすることができます。
スレッドを完成させたかっただけです。非常に明確にするために、これは IE9 では機能しませんが、CSS のちょっとしたトリックで実行できます。
<div class="customselect">
<select>
<option>2000</option>
<option>2001</option>
<option>2002</option>
</select>
</div>
.customselect {
width: 80px;
overflow: hidden;
border:1px solid;
}
.customselect select {
width: 100px;
border:none;
-moz-appearance: none;
-webkit-appearance: none;
appearance: none;
}
通常の選択ドロップダウンを HTML/CSS に置き換える DropKick.js というライブラリがあり、JavaScript で完全にスタイルを設定して制御できます。http://dropkickjs.com/
完全に機能するクロス ブラウザ サポートでは、これを行うことはできません。
50 ピクセルの div を取得して、この右に選択した希望のドロップダウン アイコンを浮かせてみてください。
そのdiv内に、おそらく55ピクセルの幅のselectタグを追加します(コンテナの幅よりも大きい)
欲しいものが手に入ると思います。
右側にドロップ アイコンが必要ない場合は、右側に画像をフローティングする以外のすべての手順を実行します。select タグのフォーカスに Outline:0 を設定します。それでおしまい
すべてのブラウザとすべてのバージョンで動作します:
JS
jQuery(document).ready(function () {
var widthOfSelect = $("#first").width();
widthOfSelect = widthOfSelect - 13;
//alert(widthOfSelect);
jQuery('#first').wrap("<div id='sss' style='width: "+widthOfSelect+"px; overflow: hidden; border-right: #000 1px solid;' width=20></div>");
});
HTML
<select class="first" id="first">
<option>option1</option>
<option>option2</option>
<option>option3</option>
</select>