【发布时间】:2013-09-23 19:23:59
【问题描述】:
更新:我认为这是因为 IE 框模型问题。但是,调试器显示“内容宽度”156px 和高度 22px 有点令人困惑:
如果我将边界和填充设置为 0,则内容宽度是正确的,即 150 像素:
问题来了,好像如果我设置了边框和内边距,IE中整个宽度的总宽度会变成156px + 6px;在 Chrome/Firefox 中为 150px + 6px;
如果我清除边界和填充,总宽度变为: IE:150px + 0,Chrome/Firefox:150px + 0;
我使用了 style="width: 150px;"设置文本输入字段的宽度。它在 Chrome/Firefox 中完美运行,但在 IE8/10 中总是宽 6px。我使用 IE 调试器检查文本输入字段的宽度。如果我把宽度设置为146px,那么宽度就变成了150px。
我尝试将“box-sizing”设置为“content-box”以及设置字体。他们根本没有帮助。
现在,我唯一的解决方案是为 IE 写一个特定的宽度。有没有办法解决这个问题?谢谢!!
【问题讨论】:
-
请确认浏览器是否为标准模式。这听起来像是一个怪癖模式问题。如果没有看到任何代码,我无法确定,但如果这是问题所在,那么解决方案很简单:退出怪癖模式。
-
尝试重置.. 或帮助小提琴。
-
@Spudley 抱歉,我不知道您所说的“怪癖模式”是什么意思。
-
@DavidLiu:Quirks 模式是一种旧的渲染模式,存在于某些浏览器中,如果您的页面没有有效的文档类型,则会激活该模式。它会导致许多布局问题,例如您所描述的问题,并且还会关闭许多浏览器功能。你可能想read my blog post on the topic
-
@Spudley 谢谢,我的文档类型声明是 ,我认为这是一个有效的 HTML 5 文档类型声明。
标签: html css internet-explorer debugging input