IE7输入定位错误(粘性!)

时间:2012-01-19 10:33:33

标签: css internet-explorer layout

检查此页面:http://jsbin.com/itufix与IE(页面自动启用IE7模式)。

在这里,您将找到如何使用显示块呈现内联元素(输入和跨度)的示例。所有元素边距和填充都设置为0。 如果您使用IE浏览器工具(IE8-9),您可能已经注意到输入显示偏移:1。

任何人都可以解释实际发生的事情以及如何解决这个问题吗?

注意

  1. 将float添加到输入可修复此问题,但这不是一个选项。我需要在不浮动的情况下完成这项工作。
  2. 输入/ span及其div父属性hasLayout值为true!
  3. 欢迎任何与此错误相关的信息。
  4. 更新: 以下是更多使用样式的示例:http://jsbin.com/itufix/13。每个字段都可以有下面的描述,加上整个div.form-item可以浮动(如果我需要多个字段在行中)

2 个答案:

答案 0 :(得分:2)

如果你不能浮动input(为什么?)那么你可以这样做:

*+html input {
    margin-top: -1px;
    margin-bottom: -1px;
}

http://jsbin.com/itufix/5

这是使用a CSS hack所以解决方法仅适用于IE7。

答案 1 :(得分:0)

查看您的CSS,我看到以下内容:

div.form-item{
    padding: 0 1px;
}

将此更改为padding:0;似乎会删除表单字段上的所有填充到我的眼睛。见:

http://jsbin.com/ojeros/2/

或者我错过了什么?

相关问题