Domanda

Sto cercando di motivare i membri del mio team per raggiungere il nostro codice per convalidare, ma sembra che ci sia un po 'di delusione perché ci viene richiesto di supportare ancora IE6.

voi ragazzi avete qualche idea a tal fine?

Questo è quello che ho intenzione di:

  
      
  • codice semantico - YES
  •   
  • Codice Convalida - YES
  •   
  • Lavori in IE6 - YES
  •   

Non discutiamo sulla semantica qui lol. =]

HTML JS CSS

È stato utile?

Soluzione

Sì, è possibile avere il codice pienamente compatibile, e mantenere il cruft per IE6 in un file separato (normalmente):

Basta nascondere qualsiasi codice specifico IE6 con IE istruzioni condizionali. Questo è il modo migliore per farlo se si desidera che il CSS per convalidare ancora. Inoltre, tutti validi HTML dovrebbe funzionare bene in IE6 con lo stile proprio attribuito tramite CSS:

<!--[if lte IE 6]>
   <link rel="stylesheet" href="/css/ie6.css" type="text/css" media="screen" />
<![endif]-->

che sarà nascosto da tutti i validatori, e il resto del codice può rimanere valido.

In realtà, dal momento che il commento condizionale è proprio questo, un commento HTML, anche che il codice è ancora valido.

Modifica :

L'unico modo per dimostrare questo sarebbe quello di costruire un esempio, ma tutti e tre sono possibili con IE6 e propria conoscenza di codifica.

  1. Codice semantico: SI
  2. Codice Convalida: SI
  3. Lavori in IE6: SI

In realtà, la sua non solo IE6 che presenta un problema con il codice valido, ma sia IE6 e IE7 (e IE8), ma ancora una volta, solo nel CSS. Convalida i file CSS principali ma tenere IE6 CSS separato con condizionali.

Raramente devo aggiungere markup in più per il codice HTML per supportare IE6 (diversi condizionali nel head). E 'semplicemente una questione di capire il box model, e costruire le pagine semantiche di conseguenza.

Uno o due divs non sono male se presentano un raggruppamento corretta. Tre divs nidificato di fissare un bug è il male:)

Altri suggerimenti

Risposta breve: yes

E 'stata la mia esperienza che valida, markup semantico effettivamente funziona meglio con IE6. Combinate questo con il corretto, valido e semplice CSS e sei praticamente d'oro. Certo che sei destinato a incontrare qualche strano comportamento in IE6, soprattutto per i progetti più complessi, come osservato in precedenza. Tuttavia, la maggior parte di questi bug sono ben documentato . Con semplice, codice valido, l'identificazione e la fissazione di tali problemi è spesso abbastanza semplice.

i commenti condizionali, come osservato in precedenza, certamente lavorare, ma lo sviluppo di un codice valido vi impediranno di infarcendo il codice con tutti i tipi di condizioni.

Ancora non riesco a farlo funzionare? Degradare con grazia! Certo angoli arrotondati sono abbastanza e di gran moda, ma il 20% (si spera meno) degli utenti che vivono ancora nel Medioevo, probabilmente non li perdere.

E 'un po' di lavoro per far funzionare il codice in IE6, e c'è un po 'di lavoro per rendere il codice di convalida, ma questo non significa che sia lo stesso tipo di lavoro o che uno di loro farà la altro impossibile.

Non c'è davvero nulla che dice che il codice deve riuscire la convalida di lavorare in IE6. Al contrario, il codice che convalida è più probabile che il lavoro in qualsiasi browser, non solo IE6. Ci sono alcune stranezze IE6 che si possono aggirare utilizzando il codice non valido, ma non è l'unico metodo per eludere i problemi. I metodi che utilizzano codice valido sono anche più propensi a continuare a lavorare quando le nuove versioni del browser vengono rilasciate, in modo che non c'è bisogno di ricominciare da capo per ogni nuovo aggiornamento del browser.

E 'ovviamente più facile fare il lavoro di codice in IE6 se non si deve pensare a codice valido, allo stesso tempo, ma questo è solo perché ci sono più fattori da considerare, non perché i fattori sono incompatibili per sé.

No, non è possibile per qualsiasi layout moderatamente complesso.

EDIT:. Almeno non senza l'aggiunta di un sacco di brutte condizionali

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top