答案 0 :(得分:3)
使用选择框执行此操作相当......奇怪。但确定可以做到。这应该足以让你入门:
.toggle{
font-size:18px;
height:1.4em;
overflow:hidden;
border:1px solid black;
border-radius:5px;
padding:0px;
box-sizing:border-box;
-webkit-appearance:none;
-moz-appearance:none;
appearance:none;
}
.toggle option{
display:inline-block;
float:left;
width:50%;
min-width:50px;
height:100%;
text-align:center;
box-sizing:border-box;
}

<select size='2' class='toggle'>
<option value="AND" selected>AND</option>
<option value="OR">OR</option>
</select>
&#13;
答案 1 :(得分:1)
如果您可以在代码中添加一些额外的标记,那么您也可以尝试以下代码:
请检查演示文稿的小提琴。 Fiddle Link
<强> HTML 强>
<select id="select-box">
<option value="AND" selected>AND</option>
<option value="OR">OR</option>
</select>
<div class="toggle-effect">
<label class="and">AND</label>
<label class="or">OR</label>
</div>
<强> CSS 强>
select {
margin-bottom: 40px;
}
.and {
border: 1px solid black;
background:red;
color: white;
}
.or {
border: 1px solid black;
background:blue;
color: white;
}
<强> JS 强>
$('.toggle-effect').on('click', '.and,.or', function(){
var textInLabel = $(this).text();
$('#select-box').val(textInLabel);
$('#select-box').trigger('change');
});
答案 2 :(得分:0)
在对CodePen进行了一些修补之后我想出了这个,我添加了一些JS来添加滚动效果。
var select = document.getElementById('select');
select.addEventListener('mouseup', function(e) {
e.preventDefault();
});
select.addEventListener('mousewheel', function(e) {
select.selectedIndex = select.selectedIndex + 1;
});
&#13;
select {
overflow: hidden;
size: 2;
height: 18px;
}
option {
display: inline;
}
&#13;
<select id="select" multiple>
<option>1</option>
<option>2</option>
</select>
&#13;