css - IE 9 标准模式和 Chrome 中文本框右侧不需要的空格

标签 css google-chrome internet-explorer-9

谁能解释一下为什么以及如何去掉输入文本框右侧和红色边框之间的空格

即:http://jsfiddle.net/fQHGA/

<div style="float:left;border:1px solid red">
    <label style="float:left">asdasdfasdff</label>
    <input style="display:block;margin-left:100px">
</div>

IE、Chrome:http://jsfiddle.net/cxDvF/2/

<div style="float:left;border:1px solid red">
    <div>
        <label style="float:left">asdasdfasdff</label>
        <input style="display:block;margin-left:100px">
    </div>
</div>

谢谢

最佳答案

我一直在重复自己。

http://www.ntutorials.com/css/understanding-floating请阅读本教程。

简单地回答你的问题,当你 float 一个元素时,定义它的宽度。否则可能会导致跨不同浏览器的问题。

此外,如果您有默认样式设置,输入可能会有一点余量。这可能也是原因。尝试重置边距。

编辑

我不确定你想用你在 jsfiddle 中提供的那个例子来实现什么,但这里有一些要点。

  1. 输入没有结束标签。因此,</input>无效。
  2. 您正在尝试 float 标签和输入,它们都是内联元素,因此没有必要 float 它们。
  3. 如果您不知道宽度,那么您应该找到一些变通方法。没有宽度的 float 与浏览器不一致。

关于css - IE 9 标准模式和 Chrome 中文本框右侧不需要的空格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8400667/

相关文章:

html - 内容未在移动设备上显示

css - 管道无法按预期运行 npm 脚本

html - 在另一个图像中定位图像?

javascript - 在javascript中如何检查上传文件大小

css - 在 IE 8/9 中显示时我的 css 中的边距/间距异常

html - Angular 分量中的未知空间

ruby - 我可以使用适用于 Ruby 的 Selenium-webdriver 自动阻止 Chrome 请求吗?

javascript - JS 和 type.match 作为文件 mime 类型 - 需要建议

javascript - Popup.html 在所有选项卡中都是相同的(Chrome 扩展)

javascript - 使用 document.write() 将 html 写入 iframe,但 jquery 在 IE9 中不起作用