在我的CSS文件中,我有一个规则:在文本元素前后添加两个背景图像。之前我用了两张图片,一切都很好。但现在我使用精灵:所以我需要得到大图像的区域,并将其发布到元素(背景位置),但我有一个麻烦:如果我设置背景位置:我不能坚持它的位置,像左中心和右中心:background: url(../images/png/elements.png) no-repeat -5px -152px, url(../images/png/elements.png) no-repeat -5px -104px;
我怎么能浮动第一部分到左边和第二部分到右边的元素?
之前是:background: url(../images/png/mail.png) no-repeat left center, url(../images/png/edit.png) no-repeat right center;
这是真实的吗?
我用:hover
4条答案
按热度按时间6uxekuva1#
我担心这是不可能的,以限制可视区域的精灵图像,除非元素本身的大小是有限的。
然而,也许你可以将背景图像分配给
::before
和::after
伪元素,它们被正确地定位在父框的左侧/右侧(通过float
或absolute
定位)。这样你就可以独立地处理每个图标的位置。
例如:
plupiseo2#
您正在使用的
left
和right
属于background-position
。像素定义覆盖了它们。你应该把图像分成两个不同的元素。
0yg35tkg3#
不要使用
Shorthand
(特别是在position属性中):试着用这样的东西:
编辑:像素、零和%的示例。
mwg9r5ms4#