ដោយប្រើ DOCTYPE Element ក្នុងរបៀប Quirks

ចាកចេញពី Doctype ដើម្បីដាក់កម្មវិធីរុករកទៅជារបៀប Quirks

ប្រសិនបើអ្នកបានរៀបចំទំព័រវ៉ិបសាយអស់រយៈពេលជាងពីរបីខែអ្នកច្បាស់ជាយល់ពីការលំបាកក្នុងការសរសេរទំព័រដែល មើលទៅដូចគ្នានៅក្នុងកម្មវិធីរុករកទាំងអស់ ។ តាមការពិតវាមិនអាចទៅរួចទេ។ កម្មវិធីរុករកជាច្រើនត្រូវបានសរសេរជាមួយនឹងលក្ខណៈពិសេសដែលមានតែពួកគេអាចដោះស្រាយ។ ឬពួកគេមានវិធីពិសេសក្នុងការដោះស្រាយបញ្ហាដែលខុសពីរបៀបដែលកម្មវិធីរុករកផ្សេងទៀតដោះស្រាយវា។ ឧទាហរណ៍:

បញ្ហាសម្រាប់អ្នកអភិវឌ្ឍន៍កម្មវិធីរុករកគឺថាពួកគេត្រូវបង្កើតកម្មវិធីរុករកបណ្ដាញដែលអាចចូលគ្នាបានត្រលប់ទៅជាមួយគេហទំព័រដែលបង្កើតឡើងសម្រាប់កម្មវិធីរុករកចាស់។ ដើម្បីដោះស្រាយបញ្ហានេះអ្នកបង្កើតកម្មវិធីបានបង្កើតរបៀបសម្រាប់កម្មវិធីរុករកដើម្បីដំណើរការ។ របៀបទាំងនេះត្រូវបានកំណត់ដោយវត្តមានឬអវត្តមាននៃធាតុ DOCTYPE និងអ្វីដែល DOCTYPE ហៅ។

ការប្តូរ DOCTYPE និង "Quirks Mode"

ប្រសិនបើអ្នកដាក់ DOCTYPE ដូចខាងក្រោមនៅក្នុងទំព័រវ៉េបរបស់អ្នក:

កម្មវិធីរុករកទំនើប ៗ (Android 1+, Chrome 1+, IE 6+, iOS 1+, Firefox 1+, Netscape 6+, Opera 6+, Safari 1+) នឹងបកប្រែវាតាមរបៀបដូចខាងក្រោម:

  1. ដោយសារតែមាន DOCTYPE ដែលបានសរសេរយ៉ាងត្រឹមត្រូវនោះវាបង្កឱ្យមានរបៀបស្តង់ដារ។
  2. វាជាឯកសារប្តូរ HTML 4.01
  3. ដោយសារតែវាស្ថិតនៅក្នុងរបៀបស្តង់ដារកម្មវិធីរុករកភាគច្រើននឹងធ្វើឱ្យមាតិកាដែលត្រាប់តាម (ឬភាគច្រើនត្រាប់តាម) ជាមួយ HTML 4.01 ផ្លាស់ប្តូរ

ហើយប្រសិនបើអ្នកដាក់ DOCTYPE នេះនៅក្នុងឯកសាររបស់អ្នក:

នេះប្រាប់កម្មវិធីរុករកទំនើបដែលអ្នកចង់បង្ហាញទំព័រ HTML 4.01 របស់អ្នកដោយគោរពយ៉ាងតឹងរឹងជាមួយ DTD ។

កម្មវិធីរុករកទាំងនេះនឹងទៅជា "របៀបរៀបរយ" ឬ "ស្តង់ដារ" ហើយបង្ហាញទំព័រស្របតាមស្តង់ដារ។ (ដូច្នេះសម្រាប់ឯកសារនេះស្លាកដូចជាអាចត្រូវបានមិនអើពើទាំងស្រុងដោយកម្មវិធីរុករកនៅពេលដែលធាតុ FONT ត្រូវបានបដិសេធនៅក្នុង HTML 4.01 តឹងរ៉ឹង។ )

ប្រសិនបើអ្នកចាកចេញពី DOCTYPE ចេញទាំងស្រុង, កម្មវិធីរុករកត្រូវបានទាត់ដោយស្វ័យប្រវត្តិទៅជារបៀប "quirks" ។

តារាងខាងក្រោមបង្ហាញពីអ្វីដែលកម្មវិធីរុករកធម្មតាធ្វើនៅពេលដែលបង្ហាញជាមួយការប្រកាស DOCTYPE ផ្សេងៗគ្នា។

ក្រុមហ៊ុន Microsoft ធ្វើឱ្យកាន់តែរឹងមាំ

កម្មវិធី Internet Explorer 6 ក៏មានលក្ខណៈពិសេសផងដែរថាប្រសិនបើអ្នកដាក់អ្វីទាំងអស់នៅខាងលើសេចក្តីប្រកាសរបស់ DOCTYPE ពួកគេនឹងចូលទៅក្នុងរបៀបមួយ។ ដូច្នេះទាំងពីរឧទាហរណ៍ទាំងនេះនឹងដាក់ IE 6 ទៅជារបៀប quirks ទោះបីជា DOCTYPE declarations និយាយថាស្ថិតក្នុងរបៀបស្តង់ដារតឹងរឹងក៏ដោយ:

និង XHTML 1.1 DOCTYPE:

លើសពីនេះទៀតប្រសិនបើអ្នកទទួលបាន IE6 មុនពេលនោះអ្នកមាន "លក្ខណៈពិសេស" ដែល Microsoft បានបន្ថែមនៅក្នុង IE8 និង IE9: ប្ដូរធាតុ META និងដាក់ក្នុងបញ្ជីខ្មៅ។ ជាការពិតកំណែកម្មវិធីរុករកទាំងពីរនេះឥឡូវនេះមានរបៀបប្រាំពីរ (!) ខុសគ្នា:

IE 8 ក៏បានណែនាំពី "របៀបឆបគ្នា" ដែលអ្នកប្រើអាចជ្រើសរើសផ្លាស់ប្តូរគំរូបង្ហាញត្រឡប់ទៅរបៀប IE 7 វិញ។ ដូច្នេះសូម្បីតែអ្នកបានកំណត់របៀបដែលអ្នកចង់កំណត់ដោយប្រើទាំង DOCTYPE និង META ធាតុទំព័ររបស់អ្នក នៅតែ អាចត្រូវបានរុញត្រឡប់ទៅជារបៀបស្តង់ដារតិចជាង។

តើអ្វីទៅជា Quirks Mode?

របៀប Quirks ត្រូវបានបង្កើតឡើងដើម្បីជួយដោះស្រាយបញ្ហារាវរកចម្លែកនិងការគាំទ្រកម្មវិធីរុករកដែលមិនគាប់ចិត្តនិងការគំរាមកំហែងដែលអ្នករចនាគេហទំព័រកំពុងប្រើដើម្បីដោះស្រាយបញ្ហាទាំងនោះ។ ការព្រួយបារម្ភដែលក្រុមហ៊ុនផលិតកម្មវិធីរុករកមានគឺថាប្រសិនបើពួកគេប្តូរកម្មវិធីរុករករបស់ពួកគេទៅតាមការបញ្ជាក់ពេញលេញការរចនាគេហទំព័រនឹងត្រូវបានទុកចោល។

ដោយការបង្កើតការប្ដូរ DOCTYPE និង "Quirks Mode" នេះអនុញ្ញាតឱ្យអ្នករចនាគេហទំព័រជ្រើសរើសរបៀបដែលពួកវាចង់ឱ្យកម្មវិធីរុករកបើក HTML ។

បែបផែនទម្រង់ Quirks

មានផលប៉ះពាល់ជាច្រើនដែលកម្មវិធីរុករកភាគច្រើនប្រើនៅក្នុង Quirks Mode:

វាមានភាពខុសប្លែកគ្នានៅក្នុង "របៀបស្តង់ដារស្ទើរតែទាំងអស់":

របៀបជ្រើសរើស DOCTYPE

ខ្ញុំបានចូលទៅក្នុងលម្អិតបន្ថែមទៀតនៅក្នុងអត្ថបទ DOCTYPE បញ្ជីរបស់ខ្ញុំប៉ុន្តែខាងក្រោមនេះគឺជាច្បាប់ទូទៅមួយចំនួននៃមេដៃ:

  1. តែងតែជ្រើសរើសរបៀបស្ដង់ដារជាមុនសិន។ ហើយបទដ្ឋានបច្ចុប្បន្នដែលអ្នកគួរប្រើគឺ HTML5:
    លុះត្រាតែអ្នកមានហេតុផលច្បាស់លាស់ដើម្បីជៀសវាងការប្រើប្រាស់ HTML5 DOCTYPE នេះគឺជាអ្វីដែលអ្នកគួរតែប្រើ។
  2. ទៅកាន់ HTML 4.01 យ៉ាងតឹងរឹងប្រសិនបើអ្នកត្រូវការធ្វើឱ្យធាតុមេតាមានសុពលភាពឬចង់ជៀសវាងលក្ខណៈពិសេសថ្មីដោយមូលហេតុខ្លះ:
  3. ប្រសិនបើអ្នកបានបញ្ចូលរូបភាពក្នុងតារាងហើយមិនចង់ជួសជុលពួកវាសូមចូលទៅ Transitional HTML 4.01:
  4. កុំសរសេរទំព័រដោយចេតនាក្នុងរបៀបមួយ។ ប្រើ DOCTYPE ជានិច្ច។ នេះនឹងជួយសង្រ្គោះអ្នកនៅលើពេលវេលាអភិវឌ្ឍន៍នាពេលអនាគតហើយពិតជាមិនមានអត្ថប្រយោជន៍ទេ។ IE6 ត្រូវបានបាត់បង់ប្រជាប្រិយភាពយ៉ាងឆាប់រហ័សនិងដោយការរចនាសម្រាប់កម្មវិធីរុករកនេះ (ដែលជាការរចនាសំខាន់នៅក្នុងរបៀប quirks) អ្នកកំពុងកំណត់ខ្លួនឯងអ្នកអាននិងទំព័ររបស់អ្នក។ ប្រសិនបើអ្នកត្រូវសរសេរ IE 6 ឬ 7 បន្ទាប់មកប្រើមតិយោបល់តាមលក្ខខណ្ឌដើម្បីគាំទ្រពួកវាជាជាងបង្ខំឱ្យកម្មវិធីរុករកទំនើបចូលទៅក្នុងរបៀបមួយ។

ហេតុអ្វីត្រូវប្រើ DOCTYPE

នៅពេលដែលអ្នកដឹងអំពីការប្តូរ DOCTYPE ប្រភេទនេះអ្នកអាចប៉ះពាល់ដល់ទំព័របណ្ដាញរបស់អ្នកដោយផ្ទាល់ដោយប្រើ DOCTYPE ដែលបង្ហាញពីអ្វីដែលកម្មវិធីរុករកអាចរំពឹងពីទំព័ររបស់អ្នក។ ដូចគ្នានេះផងដែរនៅពេលដែលអ្នកចាប់ផ្តើមប្រើ DOCTYPE អ្នកនឹងសរសេរ HTML ដែលកាន់តែខិតជិតទៅនឹងសុពលភាព (អ្នកគួរតែបញ្ជាក់វា) ។ ហើយដោយការសរសេរ XHTML ត្រឹមត្រូវ, អ្នកលើកទឹកចិត្តអ្នកបង្កើតកម្មវិធីរុករកដើម្បីបង្កើតស្តង់ដារកម្មវិធីរុករក។

កំណែកម្មវិធីរុករកនិងរបៀប Quirks

DOCTYPE Android
Chrome
Firefox
IE 8+
iOS
Opera 7.5+
Safari
IE 6
IE 7
Opera 7
Netscape 6
គ្មាន របៀប Quirks របៀប Quirks របៀប Quirks
HTML 3.2
របៀប Quirks របៀប Quirks របៀប Quirks
HTML 4.01
អន្តរកាល របៀបស្តង់ដារ * របៀបស្តង់ដារ * របៀបស្តង់ដារ
អន្តរកាល របៀប Quirks របៀប Quirks របៀប Quirks
តឹងរ៉ឹង របៀបស្តង់ដារ របៀបស្តង់ដារ * របៀបស្តង់ដារ
តឹងរ៉ឹង របៀបស្តង់ដារ របៀបស្តង់ដារ * របៀបស្តង់ដារ
HTML5
របៀបស្តង់ដារ របៀបស្តង់ដារ * របៀប Quirks
* ជាមួយ DOCTYPE នេះកម្មវិធីរុករកមានលក្ខណៈស្តង់ដារជិតស្និទ្ធប៉ុន្តែមានបញ្ហាមួយចំនួនត្រូវប្រាកដថាសាកល្បង។ នេះត្រូវបានគេស្គាល់ផងដែរថាជា "របៀបស្តង់ដារស្ទើរតែ" ។