2012-04-22 3 views
0

IE固有のCSSスタイルシートを正しく取得するためにHTML条件ステートメントを取得する際に問題が発生しました。誰かが私の構文の正しさを確認するために私のコードの上部を見てみることができますか?Internet Explorerの検出用の条件付きHTMLステートメント

<?xml version="1.0" encoding="iso-8859-1"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
    <head> 
    <title>Cherokee Cat Clinic</title> 
    <link rel="stylesheet" type="text/css" href="styles/cherokee.css" /> 

    <!--[if IE]> 
     <link rel="stylesheet" type="text/css" href="styles/ie/cherokee_ie.css" /> 
    <![endif]--> 
    <!--[if IE 9]> 
     <link rel="stylesheet" type="text/css" href="styles/ie/cherokee_ie.css" /> 
    <![endif]--> 
    <!--[if IE 8]> 
     <link rel="stylesheet" type="text/css" href="styles/ie/cherokee_ie.css" /> 
    <![endif]--> 
    <!--[if IE 7]> 
     <link rel="stylesheet" type="text/css" href="styles/ie/cherokee_ie.css" /> 
    <![endif]--> 
    <!--[if lte IE 6]> 
     <link rel="stylesheet" type="text/css" href="styles/ie/cherokee_ie.css" /> 
    <![endif]--> 
    <style type="text/css"> 

また、IEのさまざまなバージョンのサイトを再構築するプロセスには非常に新しくなっています。 Quirks Modeの属性テーブルを見たことがありますが、IEのどのバージョンでCSSセレクタが/驚異的であるかの良い概説がありますか?またはIE7のために設計するときに注意すべき点についてのStack Overflowの記事のための良いリファレンススレッド& 8?

+2

構文が正しいようです。 IEのバージョンごとに完全に別々のCSSを書くのではなく、ブラウザ間のレイアウトを行い、動作していないものだけを修正するようお勧めします。 –

+0

ブラウザ間のレイアウトを達成するのに役立つCSSテクニックのリストを参照できますか?私が作業しているコードは非常にシンプルですが、イメージの割合と配置に重大な問題があります。 –

答えて

3

ifステートメントに関する限り、コードは良好に見えますが、一番上にxml宣言があると、IEはquirksモードになります。そのため、問題の原因となる可能性があります。道路。それが助けになるかどうかを傷つけて見たいかもしれません。

IEの各バージョンのビルドに関しては、しないでください。猶予期間はゲームの名前です。 IE8 & 9は、機能的にも、デザインにも似ています(デザインやコードにいくつの小さなトリックをつけているかによって決まります)。 IE7はうまくいっていて、完全な混乱のようには見えません。 IE6はそれを吸うことができます。

お客様のクライアントの場合、具体的にはがブラウザの完全な互換性を要求している場合、明らかに別の問題です。

、あなたはそれらの一般的な問題に目を光らせて維持を助けるためにこのような記事をチェックアウトすることができますに注意して簡単にIEに回避するためのものに関する:http://css-tricks.com/ie-css-bugs-thatll-get-you-every-time/

+0

ありがとう、ジョン!あなたは男を揺らす。私はそのXML宣言については本当に確信が持てませんでしたので、ちょうどそれをダンプします。私は本当にこれであなたの助けに感謝します! –

+0

おかげで、ブロサ –

0

あなたのコード:

<?xml version="1.0" encoding="iso-8859-1"?> 
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> 
<html> 
.... 

上記の行に問題があります。

構文に間違いはありませんが、DOCTYPEがコードの最初のものではない場合、Quirksモードになるという点で、古いバージョンのIEに問題があります。 (doctypeの上のコメントであっても、この不幸なバグを引き起こす可能性があります)

<?xml>エンコードラインは、Doctypeの下に落としたり移動したりすることができます。これにより、古いバージョンのIEでのレイアウトのグレーム問題が解決されます。

<?xml>行を完全に削除すると、デフォルトでUTF-8エンコーディングになります。これは、一般的に、使用するより良いエンコーディングタイプと考えられています。とにかく符号化されたiso-8859-1のスーパーセットとして機能するので、違いは気にしないでください。

関連する問題