如何伸展选择?

时间:2009-12-17 11:34:38

标签: javascript html css

我的选择有问题..默认值是“请选择”..但有一些选项,如“Acommodation& Hotels”..所以它比默认值大..所以它没有清楚地看到IE,它在FF中运行正常,我该怎么做?用css或javascript?什么是最好的解决方案?谢谢

注意:我想拉伸<option>元素而不选择

3 个答案:

答案 0 :(得分:1)

好的,所以这是我经过一段时间后想出来的解决方案。它将根据子选项的最大宽度自动增加选择框的大小。

<script type="text/javascript">
  window.onload = function()
  {
    var elem = document.getElementById('test');
    var values = elem.length;
    var biggest_value = 0;
    var biggest_option = '';

    for(var i = 0; i <= values; i++)
    {
      if (elem.options[i])
      {
        var len = elem.options[i].value.length;
      }

      if (biggest_value < len)
      {
        biggest_value = len;
        biggest_option = elem.options[i];
      }
    }

    document.getElementById('test').style.width = biggest_option.offsetWidth + 'px';

};
</script>

选择框:

<select id="test">
 <option value="Hello">Hello</option>
 <option value="Hello Again">Hello Again</option>
 <option value="Hello Yet Again">Hello Yet Again</option>
</select>

答案 1 :(得分:0)

您是否尝试使用类似的内容:

select {width:100%}

它将占用父节点的完整大小。

答案 2 :(得分:-1)

CSS:

 <style type="text/css">
  .myselect
  {
     width:150px;
  }
 </style>

将myselect类应用于您的选择框。如果需要,也可以调整宽度。