【发布时间】:2013-11-06 09:54:06
【问题描述】:
在我的网站上发生了一些有趣的事情。它正在积极开发中,我不断向网站的 sprite PNG 文件添加和添加内容。有时我添加了太多图标和块,以至于我需要更改图像的高度,但是当我这样做时,一些(不是全部!)元素会出现在不同的位置。
例如,我有一个大小为 900x900 像素的 PNG 图像。我将 CSS 样式映射到正确的坐标,我在图像底部添加了 200 像素的透明空间,并且一些样式报告了不同的位置:
即使在 RFC 中,我也阅读了规范,坐标系的起点是 x=0,y=0,即图像的左上角。这对我来说没有意义:(
更新:一些给我带来错误的容器是用正坐标而不是负坐标制作的。我仍然无法对自己解释,为什么会发生这样的事情。
更新:所以精灵位于此 URL http://lucho.hoolwars.com/img/sprites.png
如果精灵的高度发生变化,这里有几个样式会改变坐标
.job-summary {
width: 330px;
height: 45px;
background: transparent url(/img/sprites.png) -15px 435px;
cursor: default;
}
.popup-title {
background: url('../img/sprites.png') -425px -1077px transparent;
width: 275px;
color: black;
font-weight: normal;
}
.popup-close {
position: absolute;
background: url('../img/sprites.png') -771px -972px transparent;
right: -9px;
top: -22px;
width: 38px;
height: 38px;
z-index: 2;
cursor: pointer;
}
每次我更改“sprites.png”的高度时,这些坐标都不再有效:|
【问题讨论】:
-
我们可以看看你的网站吗..?
-
恐怕不行,我现在只有开发环境,但我可以展示精灵和示例 CSS。
-
是的,请 - 否则人们只能猜测可能是什么问题。
-
更新了主帖!
-
负像素值表明距离是从精灵的“底部”和.或“右侧”。如果它们都是正值,你可能不会有这个问题......
标签: html css sprite background-position