Artikel ini secara sistematis menjelaskan elemen Doctype. Pada saat yang sama, banyak informasi diverifikasi. Karena informasi di internet cukup berantakan, saya telah mendefinisikannya kembali setelah pengumpulan dan penyortiran. Misalnya, definisi elemen Doctype terutama dibagi menjadi pengetahuan dasar dan pengetahuan lanjutan. Pengetahuan Dasar menjelaskan pengetahuan DOMPITEP BASIC. Banyak pengetahuan canggih berasal dari internet, terutama beberapa teknik praktis.
Doctype adalah singkatan dari jenis dokumen. Elemen <! Doctype> digunakan untuk mendeklarasikan deklarasi tipe dokumen halaman (DTD). Deklarasi elemen ini terletak di bagian depan dokumen dan sebelum tag <html>. Dengan mengonfirmasi DTD halaman, Anda juga dapat menentukan spesifikasi W3C mana (seperti spesifikasi HTML atau XHTML) yang digunakan halaman.
Terjemahan yang benar dari spesifikasi W3C harus direkomendasikan untuk W3C (rekomendasi W3C). Di banyak mata desainer, W3C adalah standar. Namun, banyak orang hanya memiliki sedikit pemahaman. Berikut ini tercantum dalam spesifikasi HTML dan spesifikasi XHTML dalam spesifikasi W3C saat ini. Kami akan menjelaskan hubungan antara HTML dan XHTML nanti:
| spesifikasi | menyarankan |
HTML 3.2 | 14 Januari 1997 |
HTML 4.0 | 24 Mei 1998 |
HTML 4.01 | 24 Desember 1999 |
| spesifikasi | Draft/proposal | menyarankan |
Xhtml 1.0 | 26 Januari 2000 | |
Revisi xhtml 1.0 | 1 Agustus 2002 | |
Xhtml 1.1 | 31 Mei 2001 | |
Modul xhtml | 10 April 2001 | |
Modul XHTML 1.1 | 5 Juli 2006 | |
XHTML BASIC | 19 Desember 2000 | |
XHTML BASIC 1.1 | 5 Juli 2006 | |
Acara XHTML | 14 Oktober 2003 | |
XHTML Events 2 | 16 Februari 2007 | |
Cetak xhtml | 20 September 2006 | |
Jenis media xhtml | 1 Agustus 2002 | |
XForms 1.0 | 14 Oktober 2003 | |
XForms 1.0 (SE) | 14 Maret 2006 | |
XForms 1.1 | 22 Februari 2007 | |
Xhtml 2.0 | 26 Juli 2006 | |
Xlink | 27 Juni 2001 | |
Hlink | 13 September 2002 |
XHTML dapat dianggap sebagai spesifikasi HTML terbaru dan merupakan aplikasi XML yang dapat dimigrasi dengan lancar dari HTML 4.01. Langkah pertama dalam W3C refactoring HTML 4.01 ke XML menyebabkan kelahiran XHTML 1.0. XHTML 1.0 bergantung pada semantik yang disediakan oleh tag HTML 4.01.
File halaman mendeklarasikan DTD yang berbeda melalui elemen <Doctype> untuk memberi tahu browser mana spesifikasi HTML atau XHTML yang sesuai dengan halaman saat ini. Berikut ini hanya mencantumkan DTD yang terkait dengan spesifikasi HTML4.01 dan XHTML1.0:
HTML 4.01 Menentukan tiga jenis dokumen: ketat, transisi, dan frameset.
Jika Anda membutuhkan tanda bersih untuk menghindari kebingungan di lapisan presentasi, gunakan jenis ini. Harap gunakan dengan Cascading Style Sheets (CSS):
<! Doctype html public -// w3c // dtd html 4.01 // en
http://www.w3.org/tr/html4/strict.dtd>
DTD transisi dapat berisi sifat dan elemen render yang diharapkan W3C untuk pindah ke lembar gaya. Gunakan jenis ini jika pembaca Anda menggunakan browser yang tidak mendukung cascading stylesheets (CSS) sehingga Anda harus menggunakan fitur rendering html:
<! Doctype html public -// w3c // dtd html 4.01 transisi // en
http://www.w3.org/tr/html4/loose.dtd>
Frameset DTD harus digunakan untuk dokumen dengan bingkai. Kecuali untuk elemen frameset yang menggantikan elemen tubuh, frameset DTD setara dengan DTD transisi:
<! Doctype html public -// w3c // dtd html 4.01 frameset // en
http://www.w3.org/tr/html4/frameset.dtd>
XHTML 1.0 Menentukan tiga jenis dokumen XML: ketat, transisi, dan frameset.
Jika Anda membutuhkan tanda bersih untuk menghindari kebingungan di lapisan presentasi, gunakan jenis ini. Harap gunakan dengan Cascading Style Sheets (CSS):
<! Doctype html
Publik -// w3c // dtd xhtml 1.0 strict // en
http://www.w3.org/tr/xhtml1/dtd/xhtml1-strict.dtd>
DTD transisi dapat berisi sifat dan elemen render yang diharapkan W3C untuk pindah ke lembar gaya. Gunakan jenis ini jika pembaca Anda menggunakan browser yang tidak mendukung cascading stylesheets (CSS) sehingga Anda harus menggunakan fitur rendering xhtml:
<! Doctype html
Publik -// w3c // dtd xhtml 1.0 transisi // en
http://www.w3.org/tr/xhtml1/dtd/xhtml1-transitional.dtd>
Gunakan DTD ini saat Anda ingin menggunakan kerangka kerja!
<! Doctype html
Publik -// w3c // dtd xhtml 1.0 frameset // en
http://www.w3.org/tr/xhtml1/dtd/xhtml1-frameset.dtd>
HTML Registrasi Ketersediaan Elemen Top
Elemen tingkat atas: Menentukan jenis elemen tingkat atas yang dinyatakan dalam DTD. Ini sesuai dengan jenis dokumen SGML yang dinyatakan. Default adalah HTML.
Ketersediaan: Menentukan apakah pengidentifikasi publik resmi (FPI) adalah objek atau sumber daya sistem yang dapat diakses secara publik. Nilainya dapat bersifat publik atau sistem. Public default. Mewakili objek yang dapat diakses secara publik. Sistem mewakili sumber daya sistem, seperti file lokal atau URL.
Pendaftaran: Tentukan apakah organisasi tersebut terdaftar oleh Organisasi Internasional untuk Standardisasi (ISO).
+ adalah default, menunjukkan bahwa nama organisasi terdaftar.
- berarti nama organisasi tidak terdaftar. Gugus Tugas Rekayasa Internet (IETF) dan World Wide Web Association (W3C) bukan organisasi ISO terdaftar.
Organisasi: Menentukan nama kelompok atau organisasi yang menunjukkan penciptaan dan pemeliharaan DTD yang dirujuk oleh Deklarasi Dokter! IETF adalah IETF. W3C adalah W3C.
Jenis: Menentukan kelas teks publik, yaitu jenis objek yang dirujuk. Default adalah DTD.
Tag: Menentukan deskripsi teks publik, yaitu nama deskriptif yang unik untuk teks publik yang dikutip. Nomor versi dapat dimasukkan nanti. Default adalah HTML.
Definisi: Tentukan definisi tipe dokumen.
Dokumentasi frameset frameset.
Ketat tidak termasuk semua atribut dan elemen yang representatif yang ingin diadili oleh para ahli W3C, karena lembaran gaya sudah sempurna.
Transisi berisi semua konten kecuali elemen frameset.
Bahasa: Menentukan bahasa teks publik, yaitu, sistem pengkodean bahasa alami yang digunakan untuk membuat objek yang direferensikan. Definisi bahasa telah ditulis sebagai kode bahasa ISO 639 (Capital Two Letters). En default. Bahasa inggris.
URL: Menentukan lokasi objek yang direferensikan.
Jika Anda ingin memeriksa apakah konten halaman Anda memenuhi standar yang dinyatakan dalam Doctype, Anda dapat menggunakan alat verifikasi yang disediakan oleh W3C:
http://validator.w3.org/
Browser modern termasuk mode rendering yang berbeda, dengan tujuan mendukung kedua halaman web yang mengikuti standar W3C dan halaman web yang dirancang untuk browser yang lebih lama. Di antara mereka, mode standar (yaitu, mode presentasi yang ketat) digunakan untuk menyajikan halaman web yang mengikuti standar terbaru, sedangkan mode quirks (yaitu, mode presentasi longgar atau mode kompatibilitas) digunakan untuk menyajikan halaman web yang dirancang untuk browser tradisional. Juga, perhatikan bahwa Mozilla/Netscape 6 telah menambahkan mode standar hampir untuk mendukung halaman web yang dirancang untuk versi standar yang lebih lama.
Secara teori, ini harus menjadi saklar yang sangat intuitif. Jika elemen <! Doctype> dari halaman menunjuk ke standar kepatuhan halaman (seperti xhtml1.0), browser akan beralih ke mode standar. Jika DOCTYPE tidak ditentukan, atau HTML 3.2 dan versi yang lebih lama ditentukan, browser beralih ke mode Quirks. Dengan cara ini, browser dapat menampilkan dokumen yang mengikuti standar dengan benar tanpa sepenuhnya meninggalkan halaman web kuno yang tidak sesuai dengan standar. Tetapi akan ada situasi berikut:
Dalam deklarasi Doctype lengkap, sertakan URL dari file Definisi Jenis Dokumen (DTD) yang sesuai. Jika URL hilang, atau jika ditentukan, jalur relatif (bukan alamat internet yang sepenuhnya memenuhi syarat), sebagian besar browser akan memasuki mode quirks, terlepas dari mode yang ditentukan oleh deklarasi Doctype.
Browser sangat sensitif terhadap bentuk dan format deklarasi Doctype. Jika Doctype dengan bentuk yang salah tidak dapat dikenali, itu akan memaksanya untuk memasuki mode Quirks (disarankan untuk menyalin dan menempelkan dokter yang benar yang diketahui ke dalam dokumen alih -alih mengetiknya secara langsung). Alasan umum untuk Form Kesalahan Doctype adalah bahwa ruang hilang antara bagian pertama dari Doctype dan URL. Runtuhnya seorang dokter dibagi menjadi dua garis menjadi satu baris, dan ruang itu akan sering hilang.
Ketika browser menangani doctype periode transisi, kemungkinan besar memiliki masalah yang tidak konsisten. IE dan Opera Gunakan Mode Standar; Netscape 6 dan versi yang lebih lama dari Safari menggunakan mode quirks; Netscape 7, Mozilla 1 dan versi Safari yang lebih baru menggunakan mode Netscape hampir standar, yang merupakan versi mode standar yang lebih toleran terhadap kesalahan.
Ada juga ketidakkonsistenan ketika browser menangani dokter yang tidak diakui. Yaitu dan opera akan memasuki mode standar; Dengan kata lain, ia mengasumsikan bahwa Doctype yang tidak diakui adalah standar baru yang belum diintegrasikan dalam browser. Sebaliknya, Netscape 6 akan beralih ke mode Quirks saat bertemu dengan dokter yang tidak diakui.
Pergantian Doctype mungkin merupakan cara yang efektif untuk membuat browser memasukkan mode rendering yang benar dan menampilkan halaman web dengan benar, asalkan Anda melihat ketidakkonsistenan di berbagai browser dan dapat secara aktif menghindari berbagai masalah.
1. Segera mengikuti deklarasi Doctype di atas adalah deklarasi namespace XHTML, ditempatkan di elemen <Html> yang disempurnakan, ditulis sebagai:
<html xmlns = http: //www.w3.org/1999/xhtml>
2. Karena halaman XHTML 1.0 adalah dokumen XML legal, dan XML peka terhadap tag dan atribut, demi kesederhanaan, semua tag dan atribut dalam xhtml 1.0 halaman harus menjadi huruf kecil.
Beberapa alat gratis, seperti html tidy (http://tidy.sourceForge.net/), dapat membantu Anda secara otomatis mengonversi tag dan atribut ke huruf kecil.
3. Deklarasikan bahasa yang digunakan di halaman dengan menambahkan elemen <meta> ke elemen <head>.
<meta http-equiv = konten-tipe konten = teks/html; charset = gbk />
4. Dalam xhtml, semua atribut harus dikutip.
Beberapa alat gratis, seperti html tidy (http://tidy.sourceForge.net/), dapat membantu Anda secara otomatis menaruh kutipan pada semua atribut.
5. Dalam xhtml, semua properti harus memiliki nilai.
Tidak dapat ditulis seperti di HTML 4.0:
<Input Tipe = Centang Nama Kotak = Nilai Kemeja = Medium Diperiksa>
Dan untuk menulis:
<Input Tipe = Centang Nama Kotak = Nilai Kemeja = Sedang Diperiksa = Diperiksa />
6. Dalam xhtml, semua tag harus ditutup.
Ada dua cara untuk menutup tag. Tag yang berisi konten ditutup menggunakan tag akhir, dan tag kosong diikuti oleh ruang dan /. Misalnya:
<p> Ini adalah html yang dapat diterima dan juga valid xhtml. </p>
<img src = logo.gif />
7. Jangan gunakan - dalam konten komentar.
- Ini hanya dapat digunakan di awal dan akhir komentar XHTML dan tidak dapat muncul dalam konten komentar. Metode penulisan berikut tidak diizinkan:
<!-Tidak valid-dan begitu juga pemisah klasik di bawah ini. ->
<! ------------------------------------->
8. HTML menyandikan semua simbol khusus.
Tiga spesifikasi W3C, XHTML/CSS/DOM, membentuk sistem yang lengkap dan ketat. Saya menyebutnya tiga spesifikasi inkarnasi dewa Trinity di dunia web. Tiga spesifikasi ini mewakili tiga bagian struktur, presentasi, dan perilaku halaman web. Bagilah halaman web secara ketat menjadi tiga lapisan ini, dan cobalah untuk membuat isi masing -masing lapisan independen satu sama lain, yang akan membantu meningkatkan penggunaan kembali dan modularitas halaman dan sangat mengurangi biaya produksi halaman, pemeliharaan, dan modifikasi. Untuk mencapai hierarki yang disebutkan di atas, XHTML yang ditulis hanya boleh berisi tag terkait struktur (elemen dan atribut). Oleh karena itu, Anda harus terbiasa menggunakan DTD tipe ketat, dan meninggalkan penanda-penanda tersebut dengan makna ekspresif sesegera mungkin (penanda tersebut tidak direkomendasikan dalam spesifikasi HTML 4.0, dan akan sepenuhnya dibuang dalam versi setelah XHTML); Abaikan metode tata letak lama berdasarkan tabel sesegera mungkin dan mengadopsi tata letak CSS yang lengkap.
"Panduan otoritatif untuk HTML dan XHTML", oleh Chuck Musciano & Bill Kennedy.
"XHTML Tutorial", oleh Chelsea Valentine & Chris Minnick.
"Situs Web Refactoring", oleh Jeffrey Zeldman.
Penulis: Zhang Ziqiu
Sumber: http://www.cnblogs.com/zhangziqiu/