2012-08-13 5 views
1

Il s'agit d'une conception fluide de quatre images (largeur = 160px) avec divs ul ou float. Tout va bien lors du redimensionnement de la fenêtre. C'est fluide.Fluid design and position absolute

Mais quand je passe à une position absolue, je ne trouve plus 160px au départ.

Vous pouvez voir le problème ici http://jsfiddle.net/zXDH9/

code:

<html> 
<head> 
    <style> 
     body { position:relative; } 
     .container { 
      /* remove comment to view problem */ 
      /*position:absolute; left:0; top:0;*/ 
      margin: 0; 
      padding: 0; 
      border: black 1px solid; 
      max-width: 690px; 
      overflow: hidden; 
     } 
     .galleryItem { 
      float: left; 
      width: 23%; 
      margin: 0 1%; 
      padding: 1% 0; 
     } 
     .galleryItem img { max-width: 100%; } 
     ul { list-style: none; } 
     ul.thumbs { 
      /* remove comment to view problem */ 
      /*position: absolute; left:0; top: 100px;*/ 
      display: block; 
      margin: 0; 
      padding: 0; 
      border: black 1px solid; 
      max-width:690px; overflow: hidden; 
     } 
     ul.thumbs>li { 
      display: block; 
      float: left; 
      width: 23%; 
      margin: 0 1%; 
      padding: 1% 0; 
     } 
     ul.thumbs>li img { 
      display: block; 
      max-width: 100%; 
     } 
    </style> 
</head> 
<body> 
    <div class="container"> 
     <div class="galleryItem"><a href="#"><img src="http://www.e-business.tn/focus/images/galleria/hobs/thumbs/F.801X_mini.jpg" alt="" /></a></div> 
     <div class="galleryItem"><a href="#"><img src="http://www.e-business.tn/focus/images/galleria/hobs/thumbs/F.802X_mini.jpg" alt="" /></a></div> 
     <div class="galleryItem"><a href="#"><img src="http://www.e-business.tn/focus/images/galleria/hobs/thumbs/F.801W_mini.jpg" alt="" /></a></div> 
    </div> 
    <ul class="thumbs"> 
     <li class=""><a href="#"><img src="http://www.e-business.tn/focus/images/galleria/hobs/thumbs/F.801X_mini.jpg" alt="" /></a></li> 
     <li class=""><a href="#"><img src="http://www.e-business.tn/focus/images/galleria/hobs/thumbs/F.802X_mini.jpg" alt="" /></a></li> 
     <li class=""><a href="#"><img src="http://www.e-business.tn/focus/images/galleria/hobs/thumbs/F.801W_mini.jpg" alt="" /></a></li> 
    </ul> 
    <script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.5.1/jquery.min.js">/*jQuery 1.5.1 Supports IE9, but not 1.5.0*/</script> 
    <script> 
     $(function(){ // Document is ready 
      /*alert($('ul.thumbs').outerWidth(true));*/ 
     }); 
    </script> 
</body> 
</html> 

Répondre

1

Par défaut, un 'bloc' elemnt comme un div sera aussi large que son contenant. Lorsque vous définissez la position d'un élément sur Absolu, vous le sortez du flux de la mise en page et supprimez la propriété 'aussi large que son conteneur' - il rétrécira pour contenir son contenu. Puisque vos images sont les plus larges et qu'elles sont flottantes, elles finissent par être empilées verticalement et la largeur résultante est de 160px. Peut-être que vous pouvez élaborer sur votre intention avec le positionnement absolu afin que nous puissions vous aider davantage.

-1

J'ai la solution grâce à Dieu. Je dois changer la largeur maximum: 690px à la largeur: 690px, largeur maximum: 100%; le design sera correct.

Questions connexes