adbacz
24.01.2014, 16:51:30
Witam,
Wiem, że tego typu tematów jest jak liści na drzewach, ale nigdzie nie znalazłem informacji na temat jak zrobić tło transparentne, ale podczas ładowania ramki?
W przeglądarce mam ustawione domyślne tło na "Magenta" i podczas ładowania się stron (na samym początku) ustawia się to tło jako domyslne tło strony, dopiero po załadowaniu się CSSa tej strony tło jest uaktualniane.
Tak samo jest z ramkami, podczas ich ładowania, tło ramki jest w kolorze Magenta, i po załadowaniu dopiero jest transparentne (wg stylu strony w ramce).
Czy ma ktoś pomysł jak to zrobić?
Wiem, że każda przeglądarka ma takie coś jak plik useragent.css i w nich jest domyślny kolor tła strony, można go jakoś edytować z poziomu JS?
vonski
24.01.2014, 17:13:49
Próbowałeś nadać tło bezpośrednio ramce?
<iframe style="background-color:transparent;" allowtransparency="true"></frame>
adbacz
27.01.2014, 15:49:47
Tak, kolor tła bezpośrednio na ramce już przerabiałem. Działa tylko do momentu, gdy przeglądarka zaczyna ładować ramkę. Gdy zaczyna ładować ustawia domyślny kolor taki, jaki jest ustawiony w przeglądarce - czyli w moim przypadku Magenta.
Próbuję zrobić taki myk, że na ramkę ustawiam tło obrazkowe (JAX loader) i gdy ramka nie jest załadowana lub jest w trakcie ładowania to pokazuje się tło to obrazkowe, by user wiedział, że się coś dzieje, a gdy ramka się już załaduje to tło zostanie przykryte kolorem tła ze strony w ramce.
Czy może można to w inny sposób rozwiązać?
EDIT:
Zauważyłem teraz, że takie coś dzieje się tylko w przeglądarce Opera. W Firefoxie jest domyślnie (od instalacji przegądarki żadne ustawienia nie były zmieniane) tło przeźroczyste dopóki strona w ramce się nie załaduje, i dopiero jest ona wyświetlana - więc tło ramki aktualizuje się dopiero po wczytaniu i pokazaniu strony w tej ramce przez przeglądarkę.
Tak samo jest w Chrome, tło jest domyslnie przezroczyste, ale dopóki przeglądarka nie wczyta dokumentu HTML, bo na moment, pomiędzy załadowaniem dokumentu strony z ramki a jej pokazaniem w ramce jest białe tło tej ramki.