Fond opaque en CSS... Pb de hauteur

Fond opaque en CSS... Pb de hauteur - HTML/CSS - Programmation

Marsh Posté le 22-04-2008 à 10:58:40    

Bonjour à tous,
 
J'ai fait deux petits div qui permette d'afficher un petit "chargement en cours" entre chaque page.
 
Le site de base est en asp.net, mais je ne pouvais pas le rajouter en code .net, pour diverses raisons que je n'exposerais pas ici.
 
Mon pb est au niveau css, maintenant, et js peut-être.
 
j'ai donc deux divs :  
 

Code :
  1. <div id="fond_opaque" class="fond_opaque" style="display: none;">&nbsp;</div>
  2.     <div id="div_loading" class="div_loading" style="display: none;">
  3.         <br /><br />
  4.         Chargement en cours...<br /><br />
  5.         <img src="../images/progress.gif" alt="Chargement en cours" />
  6.     </div>


 
Pour ces deux divs, le css associé :  
 

Code :
  1. .div_loading {position: absolute; width: 300px; font-size: 16px; border: 1px solid; color: #ee6f06; height: 100px; background: #FFFFFF; z-index: 100; font-weight: bold;}
  2. .fond_opaque {background-color:Gray; filter:alpha(opacity=60); opacity:0.6; width: 100%; height: 100%; position: absolute; top: 0px; left: 0px; margin: 0; padding: 0;}


 
Et pour les méthodes d'apparition, voici le js :  
 

Code :
  1. function afficheLoading()
  2.     {
  3.         var divHeight;
  4.         divHeight =  window.innerHeight;
  5.         divHeight = (divHeight)? divHeight: document.documentElement.clientHeight;
  6.         divHeight = (divHeight)? divHeight: document.body.clientHeight;
  7.         getElt('fond_opaque').style.height = divHeight+"px";
  8.         posDiv();
  9.         document.getElementById('fond_opaque').style.display = 'block';
  10.         document.getElementById('div_loading').style.display = 'block';
  11.     }
  12.    
  13.     function disableLoading()
  14.     {
  15.         document.getElementById('fond_opaque').style.display = 'none';
  16.         document.getElementById('div_loading').style.display = 'none';
  17.     }
  18.    
  19.     function getElt(strId){
  20.         return document.getElementById(strId);
  21.     }
  22.     pageWidth = 0;pageHeight = 0;
  23.     function getWindow(){
  24.     pageWidth =  window.innerWidth;
  25.     pageWidth = (pageWidth)? pageWidth : document.documentElement.clientWidth;
  26.     pageWidth = (pageWidth)? pageWidth: document.body.clientWidth;
  27.     pageHeight =  window.innerHeight;
  28.     pageHeight = (pageHeight)? pageHeight: document.documentElement.clientHeight;
  29.     pageHeight = (pageHeight)? pageHeight: document.body.clientHeight;
  30.     }
  31.     function posDiv(){
  32.          getWindow();
  33.          var myDiv = getElt('div_loading');
  34.          var posLeft = (pageWidth-myDiv.offsetWidth)/2;
  35.          myDiv.style.left = (posLeft<0)?0+"px":posLeft+"px";
  36.          var posTop = (pageHeight-myDiv.offsetHeight)/2;
  37.          myDiv.style.top = (posTop<0)?0+"px":posTop+"px";
  38.     }


 
Alors le JS est un essai de divers trucs que j'ai trouvés sur le net.
Le pb à l'heure actuelle, c'est que le fond opaque, si la page possède un scroll, ne remplit pas la page. Il s'arrête à la taille de la hauteur de la fenêtre client, donc en bas ya plus de fond opaque...
 
Comment je pourrais faire donc, en js je suppose, pour dire à mon fond opaque de faire toute la page html en largeur et en hauteur ?
 
Autre souci, la fonction posDiv (et la getWindow associée) sert à positionner mon div au centre de la page (hauteur et largeur), mais elle ne marche pas. Elle est copiée d'internet, mais me semble juste.... Une idée ?
 
Merci d'avance
 

Reply

Marsh Posté le 22-04-2008 à 10:58:40   

Reply

Marsh Posté le 22-04-2008 à 11:33:19    

bon bah, up...
 
:bounce:

Reply

Marsh Posté le 26-03-2009 à 16:30:51    

backdafuckup a écrit :

bon bah, up...
 
:bounce:


 
c'est dûr hein! :??:  

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed