以下是sprite菜单的一些“普通”代码
#menu li a
{
background:url('../layout/menu.jpg') no-repeat;
display:block;
text-decoration: none;
width:100%; height:100%;
}
#menu li.m1 a{ background-position:0px 0px; }
#menu li.m1 a:hover{ background-position:0px -55px; }
#menu li.m1 a.selected{ background-position:0px -55px; }我有6个不同的项目,这将需要6个不同的类x 3悬停
这是一个可以用jQuery在2-3行代码中轻松完成的任务,但是对于这样简单的事情,必须加载库……我不确定这是否值得。
因此,您可以使用jQuery方法,或者根据需要复制粘贴任意数量的css规则。
只是一遍又一遍地做东西,让我的东西有更好的方式!
发布于 2010-09-04 01:41:23
使用CSS,使用类而不是ID,这样就不需要重复了:
.menu li a
{
background:url('../layout/menu.jpg') no-repeat;
display:block;
text-decoration: none;
width:100%; height:100%;
}
.menu li.m1 a{ background-position:0px 0px; }
.menu li.m1 a:hover{ background-position:0px -55px; }
.menu li.m1 a.selected{ background-position:0px -55px; }发布于 2011-09-30 11:35:12
@GenericTypeTea在这里有正确的答案。但是你可以把你的css缩小一行,也许两行
a)像这样组合.menu li.m1 a:hover和.menu li.m1 a.selected
.menu li.m1 a:hover, .menu li.m1 a.selected{ background-position:0px -55px; }
和
b)可能删除.menu li.m1 a{ background-position:0px 0px; }
假设.m1是menu的唯一类,并且0是background的默认位置,这可能会使这一行变得不必要。
https://stackoverflow.com/questions/3638165
复制相似问题