2011-12-16 3 views
1

これは愚かな質問かもしれませんが、私は誰かのウェブページを修正したシナリオを持っています.Windowsマシン上のすべての主要なWebブラウザでうまくいきます。しかし、私がAdobe BrowserLabにウェブサイトをアップロードしたとき、OS XでSafariとFirefoxを見たとき、フッタはWindowsオペレーティングシステム上のSafariとFireFoxからちょっと離れています。Mac OSのFirefoxとSafari用CSS?

私の質問は以下のとおりです。

  • OS X上でのみのSafariとFirefoxをターゲットにする方法はありますし、Windows上のものに触れていませんか?つまり、OS X専用のスタイルシートを作成する方法はありますか?
  • Mac OS Xを対象とする条件付きのコメント(例:)はありますか?そうでない場合、他の方法はありますか?
  • または、運が悪いですか?

ありがとう!

+0

一般に、CSSリセットを使用する場合は、このような問題はありません。問題はあなたの最初のCSSにある可能性があります - いくつかの余白、パディング、浮動小数点などは出力の小さな違いを与えるかもしれません –

+0

もう一度コードを見て、浮動小数点数、埋め込み数、または浮動小数点数があるかどうかを調べますこれはおそらく、最初にウェブサイトを作った人がHTML文書でウェブサイトをスタイルし、CSSを使用することに決めたからです。 –

答えて

1

ブラウザをターゲットとして指定することができます。通常、firefox chromeなどはほぼ同じ動作をします。つまり動作が多少異なる場合があります。ブラウザをターゲットに

方法はこちらを

http://www.webmonkey.com/2010/02/browser-specific_css_hacks/
http://reference.sitepoint.com/css/conditionalcomments

+1

通常、これに頼ることなくこれを行う方法です。 –

+1

私はこのような何かをした場合(<リンクのhref = "スタイル/ style.cssに" REL = "スタイルシート" タイプ= "テキスト/ cssの" メディア= "すべて" /> \t \t <! - )を、このIE以外のすべてのブラウザを対象としますが、WindowsとOS Xの違いはわかりません。私は何を言おうとしていますか? –

+1

ドミニク・グリーン、あなたはAdobe BrowserLabをお持ちですか? –

2

記述されているベストプラクティス:ユーザーエージェントの検出を行うことなく、それを修正してください。問題を分析すると、ここであなたの問題に関する具体的な助言を求めることができます。特に、GeckoレンダリングエンジンとWebKitレンダリングエンジンは、各プラットフォーム上でほぼ同じように動作しますが、バグは簡単にはずせます。

実際にに修正できない場合は、JSブラウザの検出を行い、CSSを動的に組み込むことができます。

をしかし、これは悪い習慣です:あなたが変更を加えるたび、あなたは各ブラウザのために各CSSを変更する必要があります。

+0

あなたはこのためにjavascriptを使うべきではありません –

+3

@DominicGreen:JSの検出はCSSのハッキングより優れています。これは、文書化された特定の動作に依存します。ブラウザ。 – daan

0

はい、これはめったに正しいアプローチではありません。私はそれがフォントの問題だと思います。おそらくあなたはWindows上にあるフォントか、OSXのバージョンがわずかに異なるフォントを使用しています。

これを行う場合は、サーバーサイド言語(PHPなど)を使用してユーザーエージェントを確認し、追加のスタイルシートを含めるか、JSを使用して同じテクニックを使用してスタイルを追加するか。

これを調べるときは、CSSハックに関する情報は絶対に避けてください。

これは良い方法です:http://www.quirksmode.org/js/detect.htmlこれはハックを回避し、関連情報を含む使いやすいオブジェクトを生成するためです。

この手法は悲惨な状況でしか使用しませんでした。これまでのすべてのサイトで、古いIEやiOS以外の方法でこれを行う必要はありませんでした。

関連する問題