我在 IE 中仅遇到灵活/流畅布局中元素的背景图像问题。
基本上,我需要背景图像(1px x 1px)垂直平铺。当布局为全宽时,背景图像位于距左侧 676px 处,转换为百分比后等于 70.56367% (676px 除以它的容器 958px
)。
此在 Firefox、Chrome 和 Safari 中工作正常,但不适用于 strong> 任何 IE(6,7 和 8)。背景位置似乎仅在百分比为整数而不是分数时才起作用。当设置为 70% 或 71% 等时,背景位置会发生变化。
这是我所拥有的以及它在浏览器中的显示方式:
background:url(link/to/image.gif) repeat-y 70.6680584551148% 0;/*676px/958px*/
我还尝试将背景位置设置为单独的 X 和 Y 值(但结果相同):
background-position-x:70.6680584551148%;/*676px/958px*/
background-position-y: 0;
Firefox (v3.6.3):
Chrome (12.0.742.100):
Safari (5.0.2):
Internet Explorer(6、7 和 8 - 全部结果相同):
所以我的问题是,这只是IE问题,浏览器无法计算不完整的百分比吗?或者,是否有修复或我缺少的东西?
最佳答案
我最近正在尝试使用 em
基于百分比宽度进行可扩展的网站设计。对我来说幸运的是,这只是原型(prototype)设计,因为事实证明,IE 似乎忽略了小数点后第二位之后的任何内容。您可以通过加载 IE8 并按 F12 调出开发控制台来亲自查看。找到带有百分比的 CSS,看看它说什么。
仅供记录,我的 em
测量值会像这样 0.7056367
而不是这个 70.56367%
(在我的测试中)已变为 0.70
。那么,对我来说,IE 最多四舍五入到最接近的百分点 (70%
) 或最接近的百分之一 (70.56%
) 似乎是非常可行的。
关于css - IE(错误)百分比与背景位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6420255/