it-swarm.it

Doctypes XHTML rigorosi

Mi chiedevo quali fossero le conseguenze della costruzione di un sito conforme a XHTML1.0 Strict. Ho sviluppato molti siti utilizzando il doctype di transizione e ho letto le conseguenze di un attributo target link. Non può essere utilizzato e deve essere corretto con un blocco di codice JavaScript.

Mi chiedevo se ci fossero altri di questi eventi di "forte impatto" e se ci fossero cambiamenti significativi con la codifica giornaliera nella variante di transizione.

3
Rickjaah

Innanzitutto, usare Javascript per aggiungere attributi non validi agli elementi è esattamente altrettanto male come metterli in HTML in prima istanza. Stai solo mascherando il "problema".

In secondo luogo, l'ho detto in un'altra risposta, ma la chiave per una buona convalida è sapere quali sono gli errori importanti da affrontare. L'aggiunta di target="_blank" a un collegamento influirà negativamente su qualcuno che utilizza un browser specifico? No: il collegamento si aprirà in una nuova finestra o no. Non romperà il layout o arresti anomali del browser o altro.

Un rigoroso doctype * è l'unica scelta sensata per le nuove pagine Web, perché riduce in modo massiccio i problemi tra browser, più di qualsiasi altra tecnica. L'uso di un doctype rigoroso non significa che il codice deve essere valido al 100% per le specifiche. Va bene usare attributi tecnicamente non validi fintanto che si è consapevoli delle conseguenze (o della mancanza di) quando un browser potrebbe non supportare una funzione.

* Personalmente adoro il doctype HTML5: <!DOCTYPE html>.
Incredibilmente facile da ricordare e impone la modalità rigorosa in tutti i browser, anche IE6.

3
DisgruntledGoat

Le conseguenze sono un migliore supporto degli standard Web, una maggiore compatibilità tra browser e un controllo più semplice dell'accessibilità. Lo standard rigoroso incoraggia un codice molto pulito.

Tuttavia, a volte devi semplicemente infrangere una regola per farlo funzionare correttamente. In questi casi, l'utilizzo di Strict non ostacola la possibilità di fare qualcosa, ma ti impedisce di superare la convalida.

1
dmsnell