Jos olet suunnitellut verkkosivuja yli muutaman kuukauden ajan, olet todennäköisesti tietoinen ongelmasta, kun kirjoitat sivun, joka näyttää samalta kaikissa selaimissa. Itse asiassa se on mahdotonta. Monet selaimet kirjoittivat erikoisominaisuuksilla, joita vain he voisivat käsitellä. Tai heillä on erityisiä tapoja käsitellä asioita, jotka poikkeavat siitä, miten muut selaimet käsittelevät niitä. Esimerkiksi:
- Tasot luotiin käytettäväksi Netscape-selaimissa. Ne eivät toimi millä tahansa muulla selaimella, ja ne ovat itse asiassa vanhentuneet Netscape 6.x +: ssa.
- Inline-kehykset luotiin alun perin vain Internet Explorerille, ja ne ovat sittemmin liittyneet HTML-määritykseen.
- Internet Explorer 6.0 lisää lisätilaa (kuten) ympäröivä tunnisteet, ellei kirjoitat div-sisältöä yhteen (pitkä) riviin. (IE 6: lla on paljon muutakin tylsistystä kuin tämäkin.)
- Netscpe 4.7 ei näytä taulukoita, joita ei ole kirjoitettu oikeaan HTML-muotoon - siinä näkyy tyhjä sivu. Tämä vahvistettiin Netscape 6: ssa.
Selainkehittäjien ongelmana on, että heidän on luotava selaimia, jotka ovat taaksepäin yhteensopivia vanhemmille selaimille rakennettavien verkkosivujen kanssa. Tämän ongelman ratkaisemiseksi selaimen päättäjät loivat selainten toimintatilat. Nämä tilat määritellään DOCTYPE-elementin läsnäololla tai puuttuessa ja mitä DOCTYPE puhelut.
DOCTYPE
Menen tarkemmin artikkelissani DOCTYPELuettelo, mutta tässä on muutamia yleisiä peukalosääntöjä:
- Valitse aina standarditila ensin. Ja nykyinen standardi, jota sinun pitäisi käyttää, on HTML5: Ellei sinulla ole erityistä syytä välttää HTML5: n käyttöä
DOCTYPE, tämä on mitä sinun pitäisi käyttää. - Mene tiukkaan HTML 4.01: een, jos haluat tunnistaa vanhoja elementtejä tai haluat välttää uusia ominaisuuksia jostain syystä:
- Jos olet liittänyt kuvia taulukkoon ja et halua korjata niitä, siirry siirtymäkauden HTML 4.01:
- Älä kirjoita sivuja tarkoituksellisesti quirks-tilassa. Käytä aina a
DOCTYPE. Tämä säästää kehitysaikaa tulevaisuudessa, eikä sillä ole todellakaan mitään hyötyä. IE6 menettää nopeasti suosiotaan ja suunnittelet tätä selainta (joka on pohjimmiltaan mitä suunnittelet quirks-tilassa) rajoitat itseäsi, lukijoitasi ja sivuillesi. Jos sinun on kirjoitettava IE 6 tai 7: lle, käytä ehdollisia kommentteja tukemaan niitä, eikä pakota nykyaikaisia selaimia hermostustilaan.
Miksi käyttää DOCTYPE
Kun olet tietoinen tällaisesta DOCTYPE siirtyminen käynnissä, voit vaikuttaa verkkosivuihin suoraan käyttämällä a DOCTYPE Tämä ilmaisee, mitä selaimella voi odottaa sivulta. Lisäksi, kun aloitat käytön DOCTYPE, kirjoitat HTML-koodia, joka on lähempänä kelvollista (sinun kannattaa edelleen vahvistaa se). Kirjoittamalla voimassaoleva XHTML, kannustat selaimen tekijöitä rakentamaan standardien mukaisia selaimia.
Selainversioita ja Quirks-tilaa
DOCTYPE | AndroidKromiFirefoxIE 8+iOSOpera 7.5+Safari | IE 6IE 7Opera 7 | Netscape 6 |
|---|---|---|---|
| Ei mitään | Quirks-tila | Quirks-tila | Quirks-tila |
| HTML 3.2 | |||
| Quirks-tila | Quirks-tila | Quirks-tila | |
| HTML 4.01 | |||
| siirtymävaiheen | Standarditila * | Standarditila * | Standarditila |
| siirtymävaiheen | Quirks-tila | Quirks-tila | Quirks-tila |
| Tiukka | Standarditila | Standarditila * | Standarditila |
| Tiukka | Standarditila | Standarditila * | Standarditila |
| HTML5 | |||
| Standarditila | Standarditila * | Quirks-tila | |
| * Tällä DOCTYPE -selaimella selaimet ovat lähellä standardien mukaisia, mutta niillä on joitakin ongelmia - varmista testata. Tätä kutsutaan myös nimellä "lähes standarditila". |




