Quirks Mode
Quirks mode, znany również jako tryb osobliwości, to sposób interpretacji kodu przez przeglądarki internetowe, który pozwala na używanie przestarzałych konstrukcji językowych, niezgodnych z aktualnymi standardami. Jego celem jest zapewnienie kompatybilności wstecznej dla starszych stron internetowych.
Struktura Stron Internetowych
Obecnie strony internetowe są tworzone zgodnie z dwoma głównymi standardami: (X)HTML, który definiuje semantykę zawartości, oraz CSS, który zajmuje się warstwą prezentacji. Wiele starszych przeglądarek nie obsługiwało tych standardów, co skutkowało powstawaniem stron działających w oparciu o niepoprawnie zaimplementowane wersje HTML i CSS.
Tryby Renderowania w Przeglądarkach
Nowoczesne przeglądarki oferują różne tryby renderowania, aby zapewnić kompatybilność z różnymi stronami:
- Tryb standardów
- Tryb dziwactw
- Tryb prawie zgodny ze standardami
- Tryb dziwactw
Różnice w Modele Pudełkowym CSS
Jedną z głównych różnic między trybami jest sposób interpretacji modelu pudełkowego CSS w przeglądarkach. Przykładowo, Internet Explorer przed wersją 6 stosował błędny algorytm obliczania szerokości elementów. Wersja 6 wprowadziła poprawny algorytm w trybie standardów, ale w trybie dziwactw nadal stosowano błędny algorytm.
Wymuszanie Trybów Renderowania
Wybór trybu renderowania często zależy od obecności deklaracji DOCTYPE. Pełna deklaracja DOCTYPE uruchamia tryb standardów, natomiast jej brak skutkuje trybem dziwactw. Na przykład:
Natomiast brak deklaracji DOCTYPE prowadzi do renderowania w trybie dziwactw.
Weryfikacja Trybów Renderowania
W nowoczesnych przeglądarkach można sprawdzić aktywny tryb renderowania za pomocą właściwości document.compatMode
. Jeżeli jego wartość to 'CSS1Compat’, aktywny jest tryb standardów, a jeśli 'BackCompat’, to tryb dziwactw.
W przypadku problemów z trybami renderowania, strona QuirksMode dostarcza wiele informacji oraz porad dotyczących różnic między przeglądarkami.