Korišćenje DOCTYPE Elementa u Quirks modu

Ostavite Doctype za postavljanje pretraživača u režim Quirksa

Ako ste dizajnirali web stranice više od nekoliko meseci, najverovatnije ste svesni problema u pisanju stranice koja izgleda isto u svim pregledačima . U stvari, to je nemoguće. Mnogi pretraživači su napisani sa posebnim karakteristikama koje su jedino mogli da rade. Ili imaju posebne načine rukovanja stvarima koje se razlikuju od načina na koji drugi pregledači postupaju sa njima. Na primjer:

Problem za programera pretraživača je da moraju kreirati web pretraživače koji su kompatibilni sa web stranicama napravljenim za starije pregledače. Da bi se riješilo ovo pitanje, proizvođači pretraživača su kreirali modove za rad browsera. Ovi režimi su definisani prisustvom ili odsustvom elementa DOCTYPE i koji DOCTYPE pozivi.

Prebacivanje DOCTYPE i "Quirks Mode"

Ako stavite sledeću DOCTYPE na vašu web stranicu:

Savremeni preglednici (Android 1+, Chrome 1+, IE 6+, iOS 1+, Firefox 1+, Netscape 6+, Opera 6+, Safari 1+) bi to tumačili na sledeći način:

  1. Pošto postoji ispravno napisana DOCTYPE, ovo pokreće standardni režim.
  2. To je HTML 4.01 Prelazni dokument
  3. Pošto je u režimu standarda, većina pregledača će učiniti sadržaj usklađen (ili najviše usklađen) sa HTML 4.01 Transitional

I ako stavite ovaj DOCTYPE u svoj dokument:

Ovo govori savremenim pretraživačima da želite prikazati svoju HTML 4.01 stranicu u strogoj saglasnosti sa DTD-om.

Ovi pretraživači prelaze u "strogi" ili "standardni" mod i prikazuju stranicu u skladu sa standardima. (Dakle, za ovaj dokument, oznake kao što bi moglo biti potpuno ignorisano od strane pregledača, pošto je element FONT zastario u HTML 4.01 Strict.)

Ako potpuno napustite DOCTYPE, pretraživači se automatski prebacuju u režim "quirks".

U donjoj tabeli je prikazano šta zajednički preglednici rade kada su predstavljeni različitim DOCTYPE deklaracijama.

Microsoft to teže

Internet Explorer 6 takođe ima mogućnost da ako stavite bilo šta iznad deklaracije DOCTYPE, oni će ići u režim quirksa. Dakle, oba ova primera će staviti IE 6 u režim quirks, iako deklaracije DOCTYPE-a kažu da su u striktnim standardima:

i XHTML 1.1 DOCTYPE:

Pored toga, ako prođete pored IE6-a, onda imate "osobinu" koju je Microsoft dodao u IE8 i IE9: prebacivanje elementa META i umnožavanje web stranice. U stvari, ove dve verzije pretraživača sada imaju do sedam (!) Različitih režima:

IE 8 je takođe predstavio "Režim kompatibilnosti" u kojem korisnik može izabrati da promeni model renderiranja na IE 7 mod. Dakle, čak i ako postavite režim koji želite da podesite pomoću DOCTYPE i META elemenata, vaša stranica se i dalje može vratiti u režim koji odgovara standardima.

Šta je Quirks Mode?

Quirks mod je kreiran da pomogne u rješavanju svih čudnih renderinga i neusaglašenih podrške pretraživača i hacksa koje su web dizajneri koristili za rješavanje tih stvari. Zabrinutost proizvođača pretraživača bila je da bi, ako bi prešli svoje pretraživače na potpunu saglasnost sa specifikacijama, web dizajneri bili ostavljeni iza sebe.

Postavljanjem DOCTYPE prekidanja i "Quirks Mode" omogućili su web dizajnerima da izaberu kako žele da pregledači naprave svoj HTML.

Efekti režima Quirks

Postoji nekoliko efekata koje većina pretraživača koristi u režimu Quirks:

Postoji i razlika u "Režimu skoro standarda:"

Kako odabrati DOCTYPE

Idem u detaljnije u svojoj članak DOCTYPE List, ali evo nekih opštih pravila:

  1. Uvijek odabrati način standarda. A trenutni standard koji trebate koristiti je HTML5:
    Osim ako nemate određeni razlog da izbegnete korišćenje HTML5 DOCTYPE-a, to je ono što treba da koristite.
  2. Idite na striktan HTML 4.01 ako želite da potvrdite stare elemente ili želite izbjeći nove funkcije iz nekog razloga:
  3. Ako ste rezali slike u stolu i ne želite da ih ispravite, idite na Transitional HTML 4.01:
  4. Nemojte pisati stranice namerno u režimu quirksa. Uvek koristite DOCTYPE. Ovo će vam uštedjeti u vremenu razvoja u budućnosti i stvarno nema koristi. IE6 brzo gubi popularnost i dizajniranjem za ovaj pretraživač (što je u suštini ono što je dizajniranje u režimu quirks-a) ograničavate sebe, svoje čitaoce i vaše stranice. Ako morate da pišete za IE 6 ili 7, onda koristite uslovne komentare da ih podržite, umesto da primate moderne pregledače u režim quirksa.

Zašto koristiti DOCTYPE

Kada budete svesni ovakvog prelaska DOCTYPE-a, možete više direktno uticati na vaše web stranice koristeći DOCTYPE koji pokazuje šta pretraživač može očekivati ​​na vašoj stranici. Takođe, kada počnete da koristite DOCTYPE, pisacete HTML koji je bliži valjanosti (i dalje ga morate potvrditi). I upisivanjem važećeg XHTML-a, vi ohrabrujete proizvođače pretraživača da kreiraju standardne pretraživače.

Verzije pretraživača i Quirks režim

DOCTYPE Android
Chrome
Firefox
IE 8+
iOS
Opera 7.5+
Safari
IE 6
IE 7
Opera 7
Netscape 6
Ništa Quirks Mode Quirks Mode Quirks Mode
HTML 3.2
Quirks Mode Quirks Mode Quirks Mode
HTML 4.01
Transitional Režim standarda * Režim standarda * Režim standarda
Transitional Quirks Mode Quirks Mode Quirks Mode
Strogo Režim standarda Režim standarda * Režim standarda
Strogo Režim standarda Režim standarda * Režim standarda
HTML5
Režim standarda Režim standarda * Quirks Mode
* Sa ovim DOCTYPE-om, pretraživači su blizu standarda koji su usklađeni, ali imaju neke probleme - obavezno testirajte. Ovo je poznato i kao "Režim skoro standarda".