首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何控制select标签的宽度?

问如何控制select标签的宽度?
EN

Stack Overflow用户
提问于 2012-05-20 15:32:23
回答 3查看 172.6K关注 0票数 41

我有一个国家的列表,其中一些国家的名字很长:

代码语言:javascript
复制
<select name=countries>
 <option value=af>Afghanistan</option>
 <option value=ax>Åland Islands</option>
 ...
 <option value=gs>South Georgia and the South Sandwich Islands</option>
 ...
</select>

默认情况下,选择框的长度与列表中最长的选项一样长。我想创建一个选择框,使其在从宽浏览器窗口查看时显示默认行为,但在从窄浏览器窗口查看时恰好适合容器宽度的90%,小于最长选项的长度。

我试过min-width: 90%;,但它不起作用。单靠CSS样式能做到这一点吗?

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2012-05-20 15:42:39

使用style="max-width:90%;"

代码语言:javascript
复制
<select name=countries  style="max-width:90%;">
 <option value=af>Afghanistan</option>
 <option value=ax>Åland Islands</option>
 ...
 <option value=gs>South Georgia and the South Sandwich Islands</option>
 ...
</select>  
票数 46
EN

Stack Overflow用户

发布于 2012-05-20 15:56:24

你只是把它弄反了。指定最小宽度将使选择菜单始终至少为该宽度,因此无论窗口大小是什么,它都将继续扩展到90%,也至少是其最长选项的大小。

您需要改用max-width。这样,它将允许选择菜单扩展到其最长选项,但如果扩展超过您设置的最大宽度90%,则将其压缩到该宽度。

票数 8
EN

Stack Overflow用户

发布于 2017-11-15 22:00:37

添加div包装器

代码语言:javascript
复制
<div id=myForm>
<select name=countries>
 <option value=af>Afghanistan</option>
 <option value=ax>Åland Islands</option>
 ...
 <option value=gs>South Georgia and the South Sandwich Islands</option>
 ...
</select>
</div>

然后编写CSS

代码语言:javascript
复制
#myForm select { 
width:200px; }

#myForm select:focus {
width:auto; }

希望这能有所帮助。

票数 4
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/10671614

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档