2013-08-29 174 views
-1

这是我的第一个问题,我需要帮助我的项目网站...我想使图像向上移动,所以我有一个很好的幻灯片效果但悬停我仍然有快速过渡,我该如何修复这CSS转换不起作用

<div id="nav_bar_menu"> 
    <li class="pocetna" id="nav_bar_menu_bars"><a id="nav_bar_a" href="#" ></a></li> 
    <li class="usluge" id="nav_bar_menu_bars"><a id="nav_bar_a" href="#" ></a></li> 
    <li class="projekti" id="nav_bar_menu_bars"><a id="nav_bar_a" href="#" ></a></li> 
    <li class="kontakt" id="nav_bar_menu_bars"><a id="nav_bar_a" href="#" ></a></li> 
</div><!-- Menu --> 

这里是CSS

#nav_bar_menu { 
    height: 38px; 
    width: 580px; 
    background-color: #0F6; 
    float: right; 
    margin-left: 25px; 
    margin-right: 25px; 
    margin-top: 93px; 
    overflow:hidden; 

} 
#nav_bar_menu_bars { 
    height: 78px; 
    width: 131px; 
    margin-right: 14px; 
    display: inline; 
    float: left; 
} 
#nav_bar_a { 
    display: block; 
    position: relative; 
    width: 131px; 
    height:76px; 
    float: left; 
} 

.pocetna { 
    background-image: url(../Images/images/nav_bar_pictures_01.jpg); 
    background-repeat: no-repeat; 
    background-position: center top; 
} 

.usluge { 
    background-image: url(../Images/images/nav_bar_pictures_01.jpg); 
    background-repeat: no-repeat; 
    background-position: center top; 
} 

.projekti { 
    background-image: url(../Images/images/nav_bar_pictures_01.jpg); 
    background-repeat: no-repeat; 
    background-position: center top; 
} 

.kontakt { 
    background-image: url(../Images/images/nav_bar_pictures_01.jpg); 
    background-repeat: no-repeat; 
    background-position: center top; 
} 
.pocetna:hover { 
    position:relative; 
    top:-38px; 
} 
.usluge:hover { 
    position:relative; 
    top:-38px; 
} 
.projekti:hover { 
    position:relative; 
    top:-38px; 
} 
.kontakt:hover { 
    position:relative; 
    top:-38px; 
} 

我tryed过渡,但它不是更改......请帮我 也许一些JavaScript,这将使动画..

+0

*“CSS transition not working”*没有任何东西表明有一个。 – Bart

+0

它不会工作,因为你正在使用图像的精灵。您需要添加一个空白区域以捕捉“悬停时的图像”,并显示一个转换延迟。然后在跨度上:悬停您应用更改。我不得不为我的项目做类似的事情。请阅读http://css-tricks.com/fade-image-within-sprite/ –

回答

0

这里是链接到一个页面,文件的CSS过渡属性... http://www.w3schools.com/css3/css3_transitions.asp 看看那个。

我推断如下:你需要下面的类,在悬停时,沿着Y轴向上移动:.pocetna,.usluge,.projekti,.kontakt。这就是为什么你已经将属性设置为顶部:-38px;对于这些类使用:hover伪选择器。为了使这种情况顺利发生,你需要下面的代码...

.pocetna, .usluge, .projekti, .kontakt { 
    background-image: url(../Images/images/nav_bar_pictures_01.jpg); 
    background-repeat: no-repeat; 
    background-position: center top; 
    -moz-transition: top 2s; 
    -webkit-transition: top 2s; 
    -o-transition: top 2s; 
    transition: top 2s; 
} 


.pocetna:hover { 
    position:relative; 
    top:-38px; 
} 
.usluge:hover { 
    position:relative; 
    top:-38px; 
} 
.projekti:hover { 
    position:relative; 
    top:-38px; 
} 
.kontakt:hover { 
    position:relative; 
    top:-38px; 
} 
+1

非常感谢您......它的作品在谷歌浏览器上,但由于某些原因,它不适用于Firefox。你能告诉我,当我移动鼠标悬停时,我怎样才能让它慢慢地移回去?让它回到0.5秒? –

+0

-moz前缀应该在Firefox中处理它......这只有在运行早于版本15的Firefox版本时才是必需的。为了使其转换回来,您可能只需定位该类即可设置位置:相对和顶部:0没有悬停psuedo选择器的类应该这样做。 – rdgd

+0

非常感谢你......它的工作完美:))<3 –