Css 背景位置异常

Css 背景位置异常,css,pseudo-class,background-position,Css,Pseudo Class,Background Position,此CSS定位精灵,使精灵的左上角显示在50%的中心位置 .al-for-you h2::after, .taster-cta h2::after { background: url("images/kick-30.png") no-repeat scroll 50% -32px; content: " "; display: block; height: 30px; position: absolute; top: 100%; width:

此CSS定位精灵,使精灵的左上角显示在50%的中心位置

.al-for-you h2::after, .taster-cta h2::after {
    background: url("images/kick-30.png") no-repeat scroll 50% -32px;
    content: " ";
    display: block;
    height: 30px;
    position: absolute;
    top: 100%;
    width: 100%;
}
改变现状

background: url("images/kick-30.png") no-repeat scroll 50% 0;
正确定位(另一个)精灵(在其容器内居中)。但是这个,

background: url("images/kick-30.png") no-repeat scroll 50% 100%;
与第一个示例具有相同的偏移

它只是简单的情况下,我不能中心的背景百分比精灵,将不得不使用单独的图像?还是我遗漏了什么

Firebug在这里帮不了什么忙——我原以为将scroll更改为fixed就是答案,但背景完全消失了,不知道它去了哪里


可以在页面上看到

你可以这样写

.al-for-you h2::after, .taster-cta h2::after {
    background: url("images/kick-30.png") no-repeat scroll;
    background-position-x:  /*applicable value*/;
    background-position-y:  /*applicable value*/;
    content: " ";
    display: block;
    height: 30px;
    position: absolute;
    top: 100%;
    width: 100%;
}
希望它对你有用


祝你好运['}

如果
h2::after
元素(但不是锚定)出现错位问题是因为
h2::after
元素从何处开始。它从
10px
的偏移量开始,因为它的父元素上设置了
padding
。由于这个偏移量,图像看起来好像不在中心,即使它实际上在中心。我在下面的代码片段中为您添加了一个红色边框我经常看到它

.al为您服务{
背景:#bbccba无重复滚动0;
边界半径:20px;
溢出:隐藏;
位置:相对位置;
文本对齐:居中;
}
.艾尔为你效劳{
背景:#11696a无重复滚动0;
颜色:#fff;
显示:块;
字体大小:32px;
边缘底部:30px!重要;
填充:9px 10px!重要;
位置:相对位置;
}
.al为您h2::之后{
背景:rgba(0,0,0,0)url(“http://development.actionlearningassociates.co.uk/wordpress/wp-content/themes/ala/images/kick-30.png)无重复滚动50%-32px;
内容:“;
显示:块;
高度:30px;
位置:绝对位置;
最高:100%;
宽度:100%;
边框:1px纯红;
}
艾尔,给你,cta{
背景:#106a6a url(“http://development.actionlearningassociates.co.uk/wordpress/wp-content/themes/ala/images/kick-30.png)无重复滚动50%0;
颜色:#fff;
显示:块;
填充:40px 20px;
文本对齐:居中;
边框:1px纯红;
}

行动学习适合你吗?

如果你已经做好了改变的准备,如果你现在感觉被卡住了,或者可能面临组织内部的阻力,行动学习会有所帮助

您将能够在我们的行动学习集中与一小群同龄人分享您的经验,并采取您可以立即实施的行动


带有百分比的背景定位无法按我们预期的方式工作。请查看是否有帮助。引用W3C规范:百分比X将点X%与图像交叉(水平)或向下(垂直)对齐,点X%与图像交叉(水平)或向下(垂直)对齐元素的填充框。例如,值对为“0%0%”时,图像的左上角与填充框的左上角对齐。值对为“100%100%”时,图像的右下角位于填充框的右下角。值对为“14%84%”时,点在填充框上横穿14%,向下84%图像将被放置在填充框的14%和84%处。是的,这是正确的。这样做没有帮助吗?如果没有帮助,请创建一个简单的演示(使用堆栈片段或JSFIDLE)为了解释您的问题。在您链接的站点中,我没有看到您提到的三种设置中的任何一种设置的水平中心图像。我会在有时间的时候看到。基本上我的代码似乎符合W3C规范,但结果不匹配。您可以看到第一个图像从第二个图像向右偏移。它们是在一个垂直对齐的60 x 60文件中重新设置两个精灵60 x 30。偏移量为30 px,50%在第一个染料中正常工作,但在第二个染料中不正常,所以是的。感谢您如此清楚地解释。我喜欢您的第三个解决方案,正如您所说,它已经是位置:绝对。