| 同じソースでも見るブラウザやOSにより、表示が異なるのがHTMLの特徴どす。 とりあえず、私のつかってる互換性アップの方法を紹介するえ。 |
フォントとフレーム編どすえ
フォントの種類
今やフォントはOSが持ったはります。ほんで、標準で入ってるフォントもOSごとに違いますし、 ましてやオプションのフォントなんか他人はんのパソコンに入ってはらへん可能性の方が大きいさかい、<font face>タグは使わへんほうがよろしいえ。システムフォントを指定してもしょうおまへんさかいなぁ。
どうしてもしたかったら、Dynamic font使う手があるますけど、著作権の問題があらはるさかいなぁ。フォントの大きさ
ネスケとIEで見比べたり、Macと窓で見比べたりするとすぐ分かるんどすけど、IEや窓の方が表示フォントが多きいんえ。 これ結構問題なんどす。TableタグやFrameタグできれい(なつもり)にデザインしても、デザインが狂うんどす。 これの対策は何種類かあるさかい、好きなんつかったらよろしおすえ。
タグを使う これ裏わざどすさかいお勧めできしまへんけど、確実な方法どす。
<comment><font size=+1></comment>ってするんどす。<comment>はIE専用タグどすさかい、ネスケはこのタグを無視してフォントサイズを大きしはるんどす。
ほんで、IEはコメントやと解釈してフォントサイズを変更しはあらへんのどす。結構いけますえ。JavaScriptを使う JAVAScriptを使うと、ブラウザかとOSがわかるんどす。ほんで、それぜれで分岐させるんどす。
最大の欠点は、スクリプトをOFFにしたはる方とか、未対応のブラウザをしたはったら動作せえへんことどす。
ブラウザの判定サンプル
<script language="JavaScript">
<!--
var ver4 = parseInt(navigator.appVersion)>=4;
var isNN = navigator.appName == "Netscape";
var isIE = navigator.appName.substring(0,9) == "Microsoft";
if(isIE && ver4) { ←ブラウザがIEでver4以上やったら
document.write.〜 ←動作を記述
if(isNN && ver4) { ←ブラウザがネスケでver4以上やったら
OSの判定も基本は同じえ。考えとうみ(^-^)。CSSを使う CSSもいろいろやり方があるさかい悩みどころどすけんど、フォントを指定してしまうとネスケがCSS 無視しはるさかいあきまへん。そやさき、フォントを指定せずにフォントサイズだけ指定しまひょ。
ただ、これも最新のブラウザを使うたらへんと動作しまへんし、 1つのCSSでは対応しきれまへんさかいJAVAScriptと組み合わせて、分岐させまひょ。CSSは外部にするか、直接書くかで文法が異なりますさかい、サンプルは無しね(^-^)。フレーム
わてもフレーム使うてますさかい、えらそうなこといえしまへん。けどフレーム使う時は、ある程度対策が必要なんどす。
なんでやと思うたはるかもしれまへんけど、他人はんのホームページからフレームの中にリンクはってもうたら、 フレームの中にフレームができますわなぁ。
ほんで、自分のホームページからフレームを使うたはるお人のページに フレームの中にリンクをはったら、フレームの中にフレームができてそのまたフレームの中にフレームができますわなぁ。 そのうちシステムエラーどす(^-^)。 それはさけなあきまへん。
これもいろいろ方法があるんどすけど、とりあえず、JAVAScriptを使うのが楽どすえ。
<script language="JavaScript">
<!--
if(self !=top){
top.location.href=self.location.href;
}
// -->
</script>
これを<head>タグの中に入れときよし。