チーム メンバーがコードを検証するように動機付けようとしていますが、まだ IE6 をサポートする必要があるため、幻滅しているようです。
そのために何か考えはありますか?
これは私がしようとしていることです:
- セマンティック コード - はい
- コードの検証 - はい
- IE6 で動作 - はい
ここでセマンティクスについて議論しないようにしましょう (笑)。=]
HTML JS CSS
チーム メンバーがコードを検証するように動機付けようとしていますが、まだ IE6 をサポートする必要があるため、幻滅しているようです。
そのために何か考えはありますか?
これは私がしようとしていることです:
- セマンティック コード - はい
- コードの検証 - はい
- IE6 で動作 - はい
ここでセマンティクスについて議論しないようにしましょう (笑)。=]
HTML JS CSS
はい、完全に準拠したコードを作成し、IE6 のクラフトを別のファイルに保存することができます (通常):
IE 条件ステートメントを使用して IE6 固有のコードを非表示にするだけです。これは、CSS を引き続き検証する場合に推奨される方法です。さらに、すべての有効な HTML は、CSS を介して適切なスタイルが適用された IE6 で正常に動作するはずです。
<!--[if lte IE 6]>
<link rel="stylesheet" href="/css/ie6.css" type="text/css" media="screen" />
<![endif]-->
これはすべてのバリデーターから隠され、コードの残りの部分は有効なままになります。
実際、条件付きコメントは単なる HTML コメントであるため、そのコードでさえ有効です。
編集:
これを証明する唯一の方法は例を作成することですが、IE6 とコーディングの適切な知識があれば、3 つすべてが可能です。
実際、有効なコードに問題があるのは IE6 だけではありません。メインの CSS ファイルを検証しますが、条件付きで IE6 CSS を分離します。
IE6 をサポートするために HTML に追加のマークアップを追加する必要があることはめったにありません ( の条件を除くhead
)。ボックス モデルを理解し、それに応じてセマンティック ページを構築するだけです。
1 つまたは 2 つdivs
が適切にグループ化されている場合、それらは悪ではありません。divs
aを修正するためにネストされた3つbug
は悪です:)
簡単な答え: はい!
私の経験では、有効なセマンティック マークアップは実際には IE6 でうまく機能します。これを正しく有効でシンプルな CSS と組み合わせると、ほぼ完璧です。上記のように、特により複雑なデザインの場合、IE6 で奇妙な動作に遭遇することは間違いありません。ただし、これらのバグのほとんどは十分に文書化されています。シンプルで有効なコードを使用すれば、多くの場合、これらの問題を特定して修正することは非常に簡単です。
上記のように、条件付きコメントは確かに機能しますが、有効なコードを開発することで、コードにあらゆる種類の条件を追加することを防ぐことができます。
それでもうまくいきませんか?優雅に劣化!確かに丸みを帯びた角は美しく、大流行していますが、まだ暗黒時代に生きているユーザーの 20% (願わくばそれ以下) は、おそらくそれらを見逃すことはありません。
IE6でコードを機能させるのは少し手間がかかり、コードを検証するのも少し手間がかかりますが、それが同じ種類の作業である、または一方が他方を不可能にするという意味ではありません。
IE6で機能するには、コードが検証に失敗する必要があるということは実際には何もありません。それどころか、検証するコードは、IE6だけでなく、どのブラウザーでも機能する可能性が高くなります。無効なコードを使用して回避できるIE6の癖がいくつかありますが、問題を回避する方法はこれだけではありません。有効なコードを使用するメソッドは、新しいブラウザバージョンがリリースされたときにも機能し続ける可能性が高いため、新しいブラウザの更新ごとに最初からやり直す必要はありません。
もちろん、有効なコードを同時に考える必要がない場合は、IE6でコードを機能させる方が簡単ですが、それは、要素自体に互換性がないためではなく、考慮すべき要素が多いためです。
いいえ、適度に複雑なレイアウトには対応できません。
編集:少なくとも、多くの醜い条件を追加することなくではありません。