2013-02-14 18 views
8

Z jakiegoś powodu moja strona jest ładowany tylko część (około 1/3 mojego pliku CSS). Jest połączony i zminimalizowany. Jeśli pójdę do http://staging.easyuniv.com/styles/dbf42ab5.main.css widzę całość.tylko część pliku CSS jest coraz załadowany Chrome

Najdziwniejsze jest to, że patrząc na źródła w Narzędziach deweloperskich Chrome, około jednej trzeciej sposobu jest pusta (w samym środku nazwy klasy), ale wtedy można przewijać resztę drogi, tekst tam był.

wczytuję go na mojej stronie z następujących czynności:

<link rel="stylesheet" href="styles/dbf42ab5.main.css"> 

Każdy kiedykolwiek napotkasz coś takiego? Zabrakło mi rzeczy do wypróbowania.

+1

proste pytanie: czy jest to problem buforowania? Spróbuj "głębokiego przeładowania" kilka razy. – arkascha

+0

Czy możesz zamieścić link do pliku CSS? –

+0

Jakieś komunikaty o błędach, które otrzymujesz? Co zawiera pliki dziennika? – arkascha

Odpowiedz

6

Plik jest far from valid który prawdopodobnie powinien być analizowany, ale oto co znalazłem & hellip;

  • Nie mogę wkleić zawartość pliku CSS w http://cssbeautify.com/ - CSS jest odcięty prawie w tym samym miejscu jak Chrome robi
  • mogę wkleić do http://www.codebeautifier.com/ które mogą wygenerować plik CSS, który będzie ładować tylko w porządku! Bardzo dziwny.

przez kilka prób i błędów, wydaje się, że plik CSS, który jest łączony w jednej linii wygląda jakby został odcięty przy użyciu dewelopera Narzędzia Chrome. Plik wydaje się być analizowany jako używając Ctrl + SHIFT + F i szukając czegoś na końcu pliku (szukałem zag-divider) następnie Chrome donosi, że okaże się, chociaż znalezionego count wydawało się nie tak.

W szczególności wygląda na to, że jakakolwiek linia tego pliku CSS, która jest> = 66 537 znaków zostanie obcięta!Na przykład:

  • jeden wiersz pliku CSS < = 66,536 znaki nie zostaną odcięte
  • pojedynczy plik linia CSS> = 66,537 znaków zostaną odcięte
  • multi plik linia CSS> = 66,537 znaki będą miały tylko linie, które> = 66.537 będą obcięte

Posiadałem jedną linię dokładnie 66.537 znaków CSS, który został obcięty, ale przez dodanie pojedynczego powrotu karetki po pierwszym selektorze i przeładowaniu, cały plik został poprawnie wyświetlony w konsoli.

Podsumowując & hellip; plik CSS z dowolną linią> = 66 537 znaków wygląda tak, jakby został częściowo odcięty w Narzędziach programistycznych Chrome, mimo że plik został w pełni załadowany. Testowałem to, dodając regułę do końca wiersza, który został zastosowany przez Chrome.

Uwaga: Byłbym szczęśliwszy, jeśli liczba pozornie magia 2

Edit: Badanie przeprowadzono na Chrome 23.0.1271.97 m

+0

** + 1 ** za miłą analizę! – HamZa

+0

Więc jest limit znaków w linii? Dobry wskaźnik tam rzeczywiście +1 –

+0

@Monkieboy wygląda na to, że w Chrome Dev Tools (lub w błędzie!) Istnieje _display_ limit na linię. CSS z całej linii nadal wydaje się być poprawnie zastosowany – andyb

1

Próbowałem uruchomić go przez kilka analizatorów:

http://www.codebeautifier.com

http://www.cssportal.com/css-validator

Niestety oni nie wydają się całkowicie odczytać za pośrednictwem pliku css, należy uruchomić css przez nich wyniki są zbyt duży, aby opublikować tutaj. Myślę, że po minifikacji mogło być wiele rzeczy, które mogły się wydarzyć, błędne kodowanie, przeniesione przestrzenie, które były rzeczywiście konieczne.

Z wyników przedstawionych przez parsery sugerowałbym, aby powrócić do wersji niezminiaturowanej i zacząć od nowa, ponieważ błędy, które tu widziałem są zbyt liczne (zidentyfikowano ponad 900), aby spróbować "naprawić" css.

Powiązane problemy