在select中水平对齐选项?

时间:2017-07-26 12:58:26

标签: html css drop-down-menu html-select

我正在为我正在处理的项目设计一个选项标签,但是我无法弄清楚是否可以在选择框中水平对齐选项标签。

这就是我目前的风格:

*:focus {
    outline: none;
}

select {
  appearance: none;
  -webkit-appearance: none;
  background-color: transparent;
  border: 0;
  padding:10px;
  margin:-5px -20px -5px -5px;
}

#drink-holder {
  display:inline-block;
  vertical-align:top;
  overflow:hidden;
}
<div id="drink-holder">
  <select size="6">
      <option selected>Water</option>
      <option>Apple Juice</option>
      <option>Orange Juice</option>
      <option>Milk</option>
      <option>Coffee</option>
      <option>Sports Drink</option>
  </select>
</div>

我的应用程序中确实有jQuery,但我更喜欢css only选项,交叉兼容性不是问题,这个项目将打包在webkit中。

如果你不明白我想要的东西,就像这样:

水苹果汁橙汁......

谢谢!

编辑:对于那些对交叉可比性部分感到困惑的人,我的意思是这将打包在webkit中以制作iOS应用程序

1 个答案:

答案 0 :(得分:2)

您只需将display:inline-block;select选项一起使用:

#drink-holder select option {
  display:inline-block;
}

<强>演示:

&#13;
&#13;
*:focus {
    outline: none;
}

select {
  appearance: none;
  -webkit-appearance: none;
  background-color: transparent;
  border: 0;
  padding:10px;
  margin:-5px -20px -5px -5px;
}

#drink-holder select option {
  display:inline-block;
}

#drink-holder {
  display:inline-block;
  vertical-align:top;
  overflow:hidden;
}
&#13;
<div id="drink-holder">
  <select size="6">
      <option selected>Water</option>
      <option>Apple Juice</option>
      <option>Orange Juice</option>
      <option>Milk</option>
      <option>Coffee</option>
      <option>Sports Drink</option>
  </select>
</div>
&#13;
&#13;
&#13;