如何为HTML文本输入和下拉输入设置相同的宽度

如何为HTML文本输入和下拉输入设置相同的宽度,html,Html,我有两个HTML元素,如下所示: <input type="text"> 为什么不这样做呢 input[type="text"] { width: 200px; } select { width: 205px; } 看看 您可以修改CSS,使其保持如下状态: input, select { width:250px; } 真的很聪明,也很实用:)但我是那种“黑客”后睡不着觉的人。我很好奇。。为什么它们的宽度不一样?而你的解决方案。。。根据

我有两个HTML元素,如下所示:

<input type="text">
为什么不这样做呢

input[type="text"] {
   width: 200px;
}

select {
   width: 205px;
}
看看

您可以修改CSS,使其保持如下状态:

input, select
 {
    width:250px;        
 }

真的很聪明,也很实用:)但我是那种“黑客”后睡不着觉的人。我很好奇。。为什么它们的宽度不一样?而你的解决方案。。。根据主题的不同,宽度差可能会增加到10px或减少到0。那我该怎么办?@Senthil:是的,对不起,我无法抗拒。设计
元素的样式一直是一件痛苦的事情。我不知道你说的主题是什么意思-你不能在一个主题一个主题的基础上调整元素的宽度吗?我想这是你能做的最好的了。所谓主题,我指的是Windows主题,比如Windows经典、Windows XP、Windows 7默认主题。每个窗口主题定义控件的不同边框宽度和3d效果等。。我想知道这些是否会影响宽度每次几个像素。我无法适应这些..@Senthil:啊,好吧。我认为在这种情况下,您必须在放弃本机外观和在所有操作系统上获得完全相同大小的输入之间做出选择。+1并不能完全解决问题,因为我被迫设置自定义边框以实现100%的宽度相等。我注意到你必须强制设置边界才能使其正常工作——这会破坏本地的外观和感觉。我想要控件的本地边框。但它解决了宽度问题。目前为止最好的选择。。。作为答案。但是我真的想省去边框的事情,并且能够设置宽度。谢谢你向我介绍盒子大小属性。经过一些实验,我发现当我将其设置为
边框框
而不是
内容框
时,我在不设置边框的情况下获得了想要的效果。
input[type="text"] {
   width: 200px;
}

select {
   width: 205px;
}
input, select
 {
    width:250px;        
 }