MozillaPL.org - polskie centrum Mozilli

Główne menu:

[CSS]Div zasłaniający i problem z IE

Jak tworzyć strony WWW zgodnie ze standardami

Moderator: Pomocy?!

[CSS]Div zasłaniający i problem z IE

Postautor: mat3u » 07 sierpnia 2006, 22:18

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6

Zrobiłem div'a:
Kod: Zaznacz cały
<div id="loading" class="loading"></div>

i do tego style dzięki którym ta ramka w trakcie ładowania danych przez AJAX powinna zasłaniać strone:
Kod: Zaznacz cały
#loading, .loading{
   position: fixed;
   top: 0;
   left:0;
   right: 0;
   bottom: 0;
   _height: 100%;
   _width:100%;
   background: transparent url(images/load_bg.png) repeat;
}


Działa pod FF i Operą ale oczywiśćie IE robi problemy. Ustawiłem height na 100% w body. Wiec div jest rozciagniety na całe okno ale reszta strony jest podspodem i wystarczy przesunąć stronę w dół. Nie wiem jak sobie z tym poradzić tak aby strona była pod.

ps. Przeźroczystość do IE jest w osobnym arkuszu stylów zdefiniowana przez filter. Więc moge również jezeli bedzie taka potrzeba specialnie dla IE zrobic te wymiary.

Proszę o pomoc.

Pozdrawiam, mat3u
mat3u
 

Postautor: riddle » 08 sierpnia 2006, 06:38

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6

Position: fixed jest problemem. Ale o ile wiem chcesz zasłonić stronę - więc wystarczy zrobić position: absolute i wyłączyć overflow dla html, body (IE - html, body w innych przeglądarkach) (hidden), jeśli strona jest za długa i istnieje ryzyko, że ktoś przewinąć ją będzie chciał.
riddle
 
Posty: 502
Z nami od: 24 maja 2004, 17:43
Lokalizacja: Łódź

Postautor: Gość » 08 sierpnia 2006, 17:14

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6

Ok, dopisałem kilka linijek JS i prawie wszystko działa. Jak zmienic w JS status overflow dla html, ponieważ dla samego body nie wystarczy.

Pozdrawiam, mat3u
Gość
 

Postautor: riddle » 08 sierpnia 2006, 22:34

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6

Kod: Zaznacz cały
document.getElementsByTagName("body")[0].parentNode
riddle
 
Posty: 502
Z nami od: 24 maja 2004, 17:43
Lokalizacja: Łódź

Postautor: mat3u » 09 sierpnia 2006, 17:01

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; pl; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6

Dzieki za odpowiedzi :). Zrobiłem to inaczej:
Kod: Zaznacz cały
#loading, .loading{
   position: absolute;
   left: 0;
   top: 0;
   bottom: 0;
   right: 0;
   width: expression( 100 + "%" );
   height: expression( body.clientWidth + "px");
   margin: 0;
   padding: 0;
   background: url(images/load_bg.png) repeat;
   visibility: hidden;
}


Robi tak jak chce, we wszystkich przeglądarkach. Nie mam pojecia dlaczego tak dokładnie jest bo w sumie :

Kod: Zaznacz cały
width: expression( 100 + "%" );
to to samo co:
Kod: Zaznacz cały
width: 100%;


którego Ie nie chce zrozumiec.

Nie jestem pewien co do:

Kod: Zaznacz cały
height: expression( body.clientWidth + "px");

ale przy takiej kombinacji wszystko działa jak chce.
mat3u
 
Posty: 1
Z nami od: 08 sierpnia 2006, 17:22
Lokalizacja: /dev/null

Postautor: riddle » 09 sierpnia 2006, 20:38

Przeglądarka: Mozilla/5.0 (Windows; U; Windows NT 5.1; en-GB; rv:1.8.0.6) Gecko/20060728 Firefox/1.5.0.6

Dzięki za hinty odnośnie expressions, ostatnio się nimi dużo bawię i każda informacja jest na wagę złota. :-)
riddle
 
Posty: 502
Z nami od: 24 maja 2004, 17:43
Lokalizacja: Łódź


Wróć do Tworzenie stron WWW

Kto jest online

Zarejestrowani użytkownicy: Bing [Bot], Google [Bot]

Przejdź do powiązanej strony

Nawigacja:

Stopka: