2010-10-07 8 views
1

J'ai une boîte coulissante et ça marche bien. Mais lorsque vous le voyez pour la première fois, il a la légende de la boîte dessus, et lorsque vous passez la souris dessus, cela fonctionne correctement, mais cela commence par la légende en haut. Et je veux que la légende de la boîte ne s'affiche que lorsque l'utilisateur passe la souris sur la boîte. Je n'arrive pas à comprendre pourquoi ça fait ça. C'est un peu étrange. Jetez un coup d'oeil ici pour que vous puissiez voir de quoi je parle.Boîte coulissante avec légende

http://ironbulldog.com/windows/test.html

Ci-dessous est mon code source.

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html xmlns="http://www.w3.org/1999/xhtml"> 
<head> 
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
<title>Testing</title> 
<style type="text/css"> 

    *{ padding:0px; margin:0px; } 
    body{ background:#D5DEE7; } 
    a{ color:#C8DCE5; } 
    h3{ margin: 190px 10px 0 10px; color:#FFF; font:18pt Arial, sans-serif; letter-spacing:-1px; font-weight: bold; } 

    .boxgrid{ 
     width: 325px; 
     height: 260px; 
     margin:10px; 
     float:left; 
     background:#161613; 
     border: solid 2px #8399AF; 
     overflow: hidden; 
     position: relative; 
    } 
     .boxgrid img{ 
      position: absolute; 
      top: 0; 
      left: 0; 
      border: 0; 
     } 
     .boxgrid p{ 
      padding: 0px 10px; 
      color:#afafaf; 
      font-weight:bold; 
      font:10pt "Lucida Grande", Arial, sans-serif; 
     } 

    .boxcaption{ 
     float: left; 
     position: absolute; 
     background: #000; 
     height: 260px; 
     width: 100%; 
     opacity: .8; 
     /* For IE 5-7 */ 
     filter: progid:DXImageTransform.Microsoft.Alpha(Opacity=80); 
     /* For IE 8 */ 
     -MS-filter: "progid:DXImageTransform.Microsoft.Alpha(Opacity=80)"; 
    } 

</style> 

<script type="text/javascript" src="http://www.microsoft.com/library/shared/jquery/jquery.js"></script> 
<script type="text/javascript"> 
    $(document).ready(function(){ 
     //To switch directions up/down and left/right just place a "-" in front of the top/left attribute 
     //Vertical Sliding 
     $('.boxgrid.slidedown').hover(function(){ 
      $(".cover", this).stop().animate({top:'0px'},{queue:false,duration:300}); 
     }, function() { 
      $(".cover", this).stop().animate({top:'260px'},{queue:false,duration:300}); 
     }); 

     //Header Text Comes in Later 
     $('.boxgrid.slidedown').hover(function(){ 
      $(".delay", this).stop().animate({top:'0px'},{queue:false,duration:500}); 
     }, function() { 
      $(".delay", this).stop().animate({top:'260px'},{queue:false,duration:500}); 
     }); 
    }); 
</script> 

</head> 

<body>   
    <div class="boxgrid slidedown"> 
     <img src="jareck.jpg"/> 
     <div class="cover boxcaption"> 
      <div class="delay boxcaption"> 
      <h3>The Nonsense Society</h3> 
      </div> 
    </div> 
    </div> 

</body> 
</html> 

Répondre

3

Ajouter cette ligne à votre css

.boxcaption.cover { top: 260px; } 
+0

qui a travaillé! =) – Alex

0

ajouter juste top:260px-.boxcaption dans votre css

+0

je suis heureux que nous sommes arrivés à la même conclusion :) Merci –