Qualche motivo per non iniziare a utilizzare il doctype HTML 5? [chiuso]


132

Dovrebbe essere retrocompatibile con HTML4 e XHTML. John Resig ha pubblicato alcuni dei vantaggi .

Se non utilizzassimo nessuna delle funzionalità nuove e non supportate, ci sarebbe qualche svantaggio per iniziare a costruire siti con questo tipo di documento?


1
Sto chiudendo perché al momento era una preoccupazione valida ma la vita è andata avanti e HTML5 è ora qui per rimanere. Sta anche attirando bandiere perché molte delle risposte sono opinioni piuttosto che fatti.
Kev

Risposte:


143

Bene, considera questo:

Quando si funge da text / html, è sufficiente attivare la modalità standard per ottenere un tipo di documento. Oltre a ciò, il doctype non fa nulla per quanto riguarda i browser.

Quando viene utilizzato come text / html, sia che utilizzi il markup XHTML o markup HTML, viene trattato dai browser come HTML.

Quindi, in realtà si tratta di utilizzare il doctype più breve che attiva la modalità standard (<! DOCTYPE html>) e di utilizzare il markup HTML che produce il risultato corretto nei browser.

Il resto riguarda la conformità, la convalida e la prerferenza di markup.

Detto questo, usare <! DOCTYPE html> ora e provare a rendere il markup conforme a HTML5 non è una cattiva idea fintanto che rimani su funzionalità stabili che funzionano ora nei browser. Non useresti nulla in HTML4 o XHTML 1.x che non funziona nei browser, vero?

In altre parole, usi <! DOCTYPE html> con markup simile a HTML4 mentre onori le cose che sono state chiarite in HTML5. HTML5 riguarda la compatibilità del browser dopo tutto.

L'aspetto negativo di usare HTML5 ora è che le specifiche possono cambiare abbastanza spesso. Questo rende importante per te tenere il passo con le specifiche mentre cambia attivamente. Anche http://validator.nu/ potrebbe non essere sempre aggiornato, ma http://validator.w3.org/ non è sempre aggiornato, quindi non lasciare che ti fermi.

Naturalmente, se si desidera utilizzare il markup XHTML 1.0 e conformarsi a XHTML 1.0, non utilizzare <! DOCTYPE html>.

Personalmente, uso sempre <! DOCTYPE html> per HTML.


4
Ho pensato che l'omissione dell'URI avvii i browser in modalità stranezze, rendendo così inutile lavorare agli standard.
graham.reeds,

5
Perché non è possibile utilizzare il markup XHTML 1.0 come <! DOCTYPE html>? Ho pensato che fosse questo il punto!
Skilldrick,

2
Skilldrick, puoi scrivere documenti poliglotta sì. stackoverflow.com/questions/1079427/what-is-a-polyglot-document
Shadow2531

5
"Ho pensato che l'omissione dell'URI porta i browser in modalità stranezze" - No. Gran parte del lavoro su HTML5 è stato Ian Hickson che ha testato incessantemente molti browser di uso comune per vedere cosa funzionava e come. Il doctype HTML5 attiva la modalità standard in (credo) tutti i browser che hanno una cosa del genere.
Paul D. Waite,

23
Se aiuta, ho appena testato <! DOCTYPE html> in IE8, IE7 (usando gli strumenti di sviluppo IE8) e IE6 (usando Virtual PC). Nessuno di loro è entrato in modalità stranezze. Quindi anche IE vecchio può sicuramente gestire il doctype HTML5 standard senza entrare in modalità stranezze.
Errore di sintassi

3

La mia domanda per te sarebbe perché usarlo se non usi nessuna delle funzionalità nuove / non supportate. Non sto dicendo che non puoi giocarci, ma perché iniziare a costruire siti con un doctype che non offra vantaggi e possa essere integrato da XHTML5.


3
"Perché usarlo se non usi nessuna delle funzionalità nuove / non supportate" - perché è più breve e più facile da ricordare? Non una grande cosa, ovviamente, ma comunque.
Paul D. Waite,

Sì, ma non sarebbe XHTML 1.2 o XHTML 2.0? ;)
Talvi Watia,

1
HTML5 è 'XHTML5'. Il W3C ha interrotto lo sviluppo di 'X'HTML.
Chris Harrison,

Beh, non proprio. XHTML5 e HTML5 sono due diverse rappresentazioni di markup (serializzazioni) del linguaggio HTML. Il primo è basato su XML e il secondo è un dialetto unico (con una semantica di analisi speciale) di SGML.
Delan Azabani,

2

Direi di usarlo e testarlo ampiamente. Allora facci sapere se ha fatto saltare in aria la tua casa o qualcosa del genere. : ')


2

Basato sull'ultima versione beta di IE8, sembra che MS utilizzerà il doctype HTML5 come bypass per il quagmire di commutazione della modalità IE8. Sembra che il rischio più grande con la distribuzione anticipata del doctype HTML5 sia che se le persone pubblicano molti contenuti incompatibili con IE8 con il doctype HTML5 prima della spedizione di IE8, gli Stati membri potrebbero avere dei brividi nel rendere semplice la situazione in modalità HTML5.

Aggiornamento: sembra che sia stato votato verso il basso. Abbastanza ovviamente ora che IE8 è stato spedito, la considerazione di cui sopra non si applica più. E in effetti, la situazione non è semplice con IE8 .


2

L'aspetto negativo per me riguarda principalmente la convalida:

  1. Gli strumenti di convalida di terze parti non sempre tengono il passo con il cambiamento delle specifiche, rendendo i miei strumenti preferiti inaffidabili.
  2. Preferisco convalidare contro documenti rigorosi per assicurarmi di aver chiuso tutti gli elementi. È un modo semplice per evitare errori di nidificazione semplici ma dispendiosi in termini di tempo. Con HTML 5 non devi chiudere i tuoi elementi, quindi non c'è modo di trovare tag senza eguali.

Questo è vero, motivo per cui si desidera cercare un correttore di filacce html: lint.brihten.com/html/help anziché semplicemente il validatore.
Kzqai,

1

se hai intenzione di utilizzare il doctype, sperimenta le funzionalità. Fintanto che non entrano in un sito di produzione e li testerai a fondo, ce la farai.


1

Considera il tuo pubblico e le tue esigenze. Scrivo pagine come test di classe con un pubblico target di studenti nei miei corsi che usano FireFox 3 in un laboratorio informatico dotato di Ubuntu. Ho bisogno di SVG con MathMl incorporato come oggetto estraneo in SVG. Uso liberamente il doctype HTML5 e i nuovi tag HTML5.



0

Per chiunque lo trovi. Il grafico in http://hsivonen.iki.fi/doctype/mostra le varie modalità di rendering utilizzate dai diversi browser a seconda della dichiarazione DOCTYPE in uso. Ti dà una buona idea di come funziona la commutazione DOCTYPE.


-16

Personalmente direi di no. Non ci sono chiari vantaggi in HTML5 e in effetti si spingerebbe fino a dire che il tutto è fallito dall'inizio.

Avere tag specializzati per intestazione, piè di pagina e barre laterali è un enorme errore: li hai già sotto forma di tag (div) e nomi (classi / ID). Perché abbiamo bisogno di quelli specialistici? XHTML1.1 è abbastanza buono, punto. In effetti, poiché la maggior parte dei browser non supporta correttamente HTML4, è inutile utilizzare un doctype che impiegherà anni per ottenere il supporto adeguato.


10
Riguarda la semantica. Potresti perfettamente sbarazzarti di quasi ogni singolo tag in HTML e utilizzare nient'altro che attributi div, span e style / class. In questo modo rimuovi tutto il valore semantico dal documento.
Laurent,

2
Pensa a quanto sarà utile per i motori di ricerca.
Leo Jweda,

@Laurent: Quindi se voglio che un'intestazione sia ora una barra laterale, devo passare attraverso tutti i miei CSS e markup cambiandoli perché non è più semanticamente corretto? No. Trasformalo in un div, chiamalo come fa e usalo come vuoi. @Laith: in che senso sarà utile per i motori di ricerca?
Graham.reeds

Canvas: vuoi usarlo? Non puoi. Oppure puoi, ma ora sei nella terra della programmazione mirata. Non è questo il punto degli standard.
graham.reeds,

3
"Trasformalo in un div, chiamalo come fa e usalo come vuoi." - Maledettamente dritto. Mentre ci sei, fai lo stesso per tutti i tuoi paragrafi ed elenchi. Come posso digitare un sarcmark qui.
Paul D. Waite,
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.