我正在编程一个小小的WP主题,需要一些帮助,使用新的CSS3背景大小属性。CSS3的背景大小和背景位置问题
我有一个包含图像作为背景的DIV。图像本身被设置为比div更大,以呈现原始图像的一点点切除:
.imageContainer {
background-size:154% 102%;
background-position-x:-28%;
background-position-y:0.28%;
}
到目前为止一切都很好。但如果大小≥100%,则调用background-position属性会变得棘手。 我放在一起一点点JS/CSS游乐场来进行测试:
- 如果图像宽≤99%,较少的背景位置-X是指图像会离开。
- 如果图像的宽度是100%,background-position-x将不做任何处理
- 如果图像宽度≥101%,则较少的background-position-x表示图像正确。
对于我计算下面的情况:
- 大容器:350x350px
- 图片:540x359px
- 方式:(三百五分之一百)* 540 154≙%的宽度
- (100/350)* 359≙102%身高。
- 另外:位置X:-28%和位置Y:(含自动计算)-0.28%
所以我有一个页面渲染和大小有关的权利的大小。 但正如我所说,较少的background-position-x(-28%)表示图像正确,图像位置错误。
它将不得不左移,因为我计算了-28%“左边距”。所以我做了一些试验和错误,事实证明正确的位置将在50%左右。
这仍然是一个CSS3问题,或者它是我对这个属性的功能的完全误解?
这是说明我的目标图片...
如果你能放在一起http://jsfiddle.net演示该问题,链接到真实图像,将使它更容易让我们来帮助你。同样对于记录“background-position:0 0”是有效的语法。 'background-postion-x'和'background-postion-y'实际上并不是W3C规范的一部分,并且在Firefox或Opera中不受支持。 – tw16 2013-02-23 18:09:19
你是正确的关于background-position-x/y。我认为这样阅读会更容易。我正在开发Safari,所以它会工作。但是当我上线时我会删除这个语法。所以这是一种生产状态:)我会在几分钟内把小提琴放在一起。 – 2013-02-23 18:21:02
你去那里http://jsfiddle.net/FJ3Ub/ – 2013-02-23 18:33:21