5

Aktualnie testuję stronę na IE8 (uruchomioną na maszynie wirtualnej).CSS zmienia się nieoczekiwanie po otwarciu IE Developer Tools

Witryna wykorzystuje pewne obrazy tła wewnątrz: before i: after elementów, które są wewnątrz zapytania mediów:

@media (min-width: 980px) { 

    .box:after { 
     ... 
     background: url('../images/assets/home-create-background.png') bottom right no-repeat; 
     ... 
    } 
} 

Używam respond.js w celu zapewnienia wsparcia dla zapytań mediów na IE8. Reguły wewnątrz zapytania o media są stosowane natychmiast po wczytaniu strony (np. Działa działanie response.js). Jednak te obrazy nie są wyświetlane.

Zabawna rzecz: Jeśli otworzę narzędzia programistyczne IE (np. Naciskając F12), obrazy zostaną nagle wyświetlone.

Ktoś doświadczył czegoś podobnego? Czy macie jakiś pomysł lub kierunek do odkrycia?


Edit: I była w stanie rozwiązać ten problem dodawanie treści do: po pseudo-elementu (byłem już stosowania tej zasady, ale nie wewnątrz zapytania mediów i, z jakiegoś powodu, to nie była stosowana na IE)

.box:after { 
     ... 
     background: url('../images/assets/home-create-background.png') bottom right no-repeat; 
     content: " "; 
     ... 
    } 

W każdym razie uważam, że to interesujące wiedzieć, dlaczego układ się zmienia, kiedy otworzył dev narzędzi ...

+0

Czy chcesz dodać małą próbkę do pytania? –

+0

Widziałem to już wcześniej. – Knu

+0

Zauważyłem to z JavaScript, więc nie jestem całkiem zaskoczony, że dzieje się tak również z CSS. Ludzie spoza sieci naprawdę nie mają pojęcia, ile bólu spowodowało nas przez lata. – Graham

Odpowiedz

4

kilka punktów bólowych z IE można zidentyfikować więc warto sprawdzić, co następuje:

  1. Wszelkie console.log() oświadczenia zmusi IE nie czyni niczego, dopóki narzędzia programistyczne są widoczne.
  2. Po otwarciu narzędzi IE Dev domyślnie znajduje się w innym trybie zgodności niż domyślny widok, do którego jesteś przyzwyczajony.
+0

+1 Dowolne instrukcje console.log() zmuszą IE do renderowania czegokolwiek, dopóki narzędzia programistyczne nie zostaną wyświetlone. –

+0

1: To nie wydaje się być problemem w moim przypadku (próbowałem usunąć wszystkie pliki console.logs). Jednak bardzo interesujące jest to wiedzieć. 2: Nie, ja działałem w trybie normalnym (IE8), ale znowu kolejny dobry punkt! –

Powiązane problemy