提交旁边的输入类型文本,Y偏移量

时间:2014-01-30 03:13:12

标签: html css text input submit

我有这段代码:

<div style='padding: 30px; border: 1px solid #777; width: 500px; height: 500px;'>
<div style='border: 1px solid #000; width: 260px; height: 26px;'>
    <form style='margin: 0; padding: 0;'>
        <input type='text'  style='margin: 0; padding: 0; border: 0; background-color: #F88; height: 26px; width: 200px'/><input type='submit' value=''  style='margin: 0; padding: 0; border: 0; background-color: #88F;  height: 26px; width: 60px'/>
    </form>
</div></div>

你可以看到2个输入标签在一行中直接转换为其他标签,否则该中断会产生一个空间,令人讨厌。 无论如何这是结果:

enter image description here

那么这里给出了什么?为什么chrome和Safari表现得很奇怪? 我尝试了所有方法,将边框,边距和填充重置为0甚至线高。

1 个答案:

答案 0 :(得分:1)

您可以将vertical-align:top添加到input元素中。它们是inline个元素,因此vertical-align会对它们产生影响。值得注意的是,此属性的默认值为baseline。此外,您应该使用CSS而不是内联样式。

WORKING EXAMPLE HERE

<div style='padding: 30px; border: 1px solid #777; width: 500px; height: 500px;'>
   <div style='border: 1px solid #000; width: 260px; height: 26px;'>
      <form style='margin: 0; padding: 0;'>
         <input type='text'  style='vertical-align: top; margin: 0; padding: 0; border: 0; background-color: #F88; height: 26px; width: 200px'/><input type='submit' value=''  style='vertical-align: top; margin: 0; padding: 0; border: 0; background-color: #88F;  height: 26px; width: 60px'/>
      </form>
   </div>
</div>