Defnyddio'r elfen DOCTYPE yn Noddwr Quirks

Gadewch allan y Doctype i Rhoi Porwyr i mewn i Ddulliau Quirciau

Os ydych chi wedi bod yn dylunio tudalennau gwe am fwy na ychydig fisoedd, mae'n debyg eich bod yn ymwybodol o'r anhawster wrth ysgrifennu tudalen sy'n edrych yr un fath ym mhob porwr . Mewn gwirionedd, mae hynny'n amhosib. Ysgrifennwyd llawer o borwyr gyda nodweddion arbennig y gallent eu trin yn unig. Neu mae ganddynt ffyrdd arbennig o drin pethau sy'n wahanol i'r ffordd y mae porwyr eraill yn eu trin. Er enghraifft:

Y broblem i ddatblygwyr porwyr yw bod rhaid iddynt greu porwyr gwe sy'n gydnaws yn ôl â thudalennau gwe a adeiladwyd ar gyfer porwyr hŷn. Er mwyn delio â'r mater hwn, mae gwneuthurwyr porwyr yn creu dulliau i'r porwyr weithredu ynddo. Diffinnir y dulliau hyn gan bresenoldeb neu absenoldeb elfen DOCTYPE a'r hyn y mae DOCTYPE yn ei alw.

Newid DOCTYPE a "Modd Cwrc"

Os ydych chi'n rhoi'r DOCTYPE canlynol yn eich tudalen we:

Byddai porwyr modern (Android 1+, Chrome 1+, IE 6+, iOS 1+, Firefox 1+, Netscape 6+, Opera 6+, Safari 1+) yn dehongli hyn yn y modd canlynol:

  1. Oherwydd bod DOCTYPE wedi'i ysgrifennu'n gywir, mae hyn yn sbarduno modd safonau.
  2. Mae'n ddogfen 4.01 Transitional HTML
  3. Oherwydd ei fod mewn modd safonau, bydd y rhan fwyaf o borwyr yn golygu bod y cynnwys yn cydymffurfio (neu yn cydymffurfio'n bennaf) â HTML 4.01 Trosiannol

Ac os ydych chi'n rhoi'r DOCTYPE hwn yn eich dogfen:

Mae hyn yn dweud wrth borwyr modern eich bod am arddangos eich tudalen HTML 4.01 mewn cydymffurfiad cyson â'r DTD.

Bydd y porwyr hyn yn mynd i mewn i "ddull llym" neu "safonau" ac yn rhoi'r dudalen yn unol â'r safonau. (Felly, ar gyfer y ddogfen hon, mae tagiau megis y porwr yn cael eu hanwybyddu'n llwyr, gan fod yr elfen FONT wedi'i ddibynnu yn HTML 4.01 Strict.)

Os byddwch chi'n gadael y DOCTYPE yn llwyr, mae'r porwyr yn cael eu cicio'n awtomatig yn y modd "holi".

Mae'r tabl isod yn dangos yr hyn y mae'r porwyr cyffredin yn ei wneud pan gyflwynir datganiadau DOCTYPE cyffredin gwahanol.

Mae Microsoft yn ei Gwneud yn Galed

Mae gan Internet Explorer 6 hefyd y nodwedd, os byddwch yn rhoi unrhyw beth o gwbl uchod ar ddatganiad DOCTYPE, byddant yn mynd i mewn i ddulliau chware. Felly, bydd y ddwy enghraifft hyn yn rhoi IE 6 yn y modd cywir, er bod datganiadau DOCTYPE yn dweud eu bod mewn modd safonau llym:

a'r XHTML 1.1 DOCTYPE:

Hefyd, os byddwch chi'n mynd heibio IE6, yna mae gennych y "nodwedd" ychwanegodd Microsoft yn IE8 ac IE9: Newid elfennau META a rhestr du ar wefan. Mewn gwirionedd, mae gan y ddwy fersiwn porwr hyn hyd at saith (!) Dulliau gwahanol:

Cyflwynodd IE 8 hefyd "Modd Cydymffurfiaeth" lle gallai'r defnyddiwr ddewis newid y model rendro yn ôl i ddull IE 7. Felly, hyd yn oed os ydych chi'n gosod y dull rydych chi am ei osod gan ddefnyddio elfennau DOCTYPE ac META, gellid dal eich tudalen yn ôl i mewn i fodd sy'n cydymffurfio â safonau.

Beth yw Modd Quirks?

Crëwyd modd Quirks i helpu i ddelio â'r holl rendro rhyfedd a chefnogaeth y porwr nad oedd yn cydymffurfio ac yn sicrhau bod dylunwyr gwe yn defnyddio i ddelio â'r pethau hynny. Y pryder y bu i wneuthurwyr porwyr ei chael, pe baent yn trosglwyddo eu porwyr i gydymffurfio â manylebau llawn, y byddai dylunwyr gwe yn cael eu gadael ar ôl.

Trwy osod newid DOCTYPE a "Modd Quirks", roedd hyn yn caniatáu i ddylunwyr gwe ddewis sut roeddent eisiau i borwyr rendro eu HTML.

Effeithiau Modd Quirks

Mae nifer o effeithiau y mae'r rhan fwyaf o borwyr yn eu defnyddio ym Mwyd Quirks:

Mae yna hefyd wahaniaeth yn y "Modd bron Safonau:"

Sut i Ddewis DOCTYPE

Rwy'n mynd i fwy o fanylder yn fy nrthygl Rhestr DOCTYPE, ond dyma rai rheolau cyffredinol ar bawd:

  1. Dewiswch safon safonau bob tro. A'r safon bresennol y dylech fod yn ei ddefnyddio yw HTML5:
    Oni bai bod gennych reswm penodol i osgoi defnyddio'r DOCTYPE HTML5, dyma beth ddylech chi ei ddefnyddio.
  2. Ewch i HTML 4.01 llym os oes angen i chi ddilysu elfennau etifeddiaeth neu osgoi osgoi nodweddion newydd am ryw reswm:
  3. Os oes gennych ddalennau wedi'u sleisio mewn tabl ac nad ydych am eu hatgyweirio, ewch i Transitional HTML 4.01:
  4. Peidiwch â llunio tudalennau yn fwriadol yn y modd ymgeisio. Defnyddiwch DOCTYPE bob tro. Bydd hyn yn eich arbed ar amser datblygu yn y dyfodol, ac nid oes ganddo fudd o gwbl. Mae IE6 yn colli poblogrwydd yn gyflym a thrwy ddylunio ar gyfer y porwr hwn (sydd, yn ei hanfod, beth yw dylunio yn y modd cuddio) rydych chi'n cyfyngu eich hun, eich darllenwyr, a'ch tudalennau. Os bydd yn rhaid i chi ysgrifennu ar gyfer IE 6 neu 7, yna defnyddiwch sylwadau amodol i'w cefnogi, yn hytrach na gorfodi porwyr modern i mewn i ddulliau chware.

Pam Defnyddiwch DOCTYPE

Unwaith y byddwch chi'n ymwybodol o'r math hwn o newid DOCTYPE ar y gweill, gallwch effeithio ar eich tudalennau gwe yn fwy uniongyrchol trwy ddefnyddio DOCTYPE sy'n nodi'r hyn y gall y porwr ei ddisgwyl gan eich tudalen. Hefyd, ar ôl i chi ddechrau defnyddio DOCTYPE, byddwch chi'n ysgrifennu HTML sydd yn nes at fod yn ddilys (dylech chi ei ddilysu o hyd). A thrwy ysgrifennu XHTML dilys, rydych chi'n annog gwneuthurwyr porwyr i adeiladu porwyr sy'n cydymffurfio â safonau.

Fersiynau Porwr a Modd Quirks

DOCTYPE Android
Chrome
Firefox
IE 8+
iOS
Opera 7.5+
Safari
IE 6
IE 7
Opera 7
Netscape 6
Dim Modd Quirks Modd Quirks Modd Quirks
HTML 3.2
Modd Quirks Modd Quirks Modd Quirks
HTML 4.01
Trosiannol Modd Safonau * Modd Safonau * Modd Safonau
Trosiannol Modd Quirks Modd Quirks Modd Quirks
Strict Modd Safonau Modd Safonau * Modd Safonau
Strict Modd Safonau Modd Safonau * Modd Safonau
HTML5
Modd Safonau Modd Safonau * Modd Quirks
* Gyda'r DOCTYPE hwn, mae porwyr yn agos at safonau sy'n cydymffurfio, ond mae ganddynt rai materion - sicrhewch eu bod yn profi. Gelwir hyn hefyd yn "Bron i Fod Safonau."