CSSにおけるフォントの大きさの制御と外部ファイルについて

このQ&Aのポイント
  • CSSを使用して、異なるブラウザやマシンでのフォントサイズの制御方法を学ぶ。
  • 外部ファイルを使用してCSSやJavaScriptをリンクするメリットと、埋め込む場合との違いについて考える。
  • フォントの大きさに関するユーザーの意見や、異なるブラウザでの表示の問題について解決策を模索する。
回答を見る
  • ベストアンサー

cssにおけるフォントの大きさの制御と外部ファイルについて

現在多くの方々に見ていただけるようなホームページをと思って自分のページを制作しているのですが、フォントの大きさのことで困っています。 通常のIEではデフォルトでフォントを表示すると非常に大きな文字になるので-1のフォントを使用しています。しかしNNだと(特にお年寄りには)見づらいページになってしまうような感があります。 そこでスタイルシートでIEでもNNでもMacでもWinでも10ptの文字にして、文字にふれたときに下線がつくなどの処理をしました。 <style type="text/css"> <!-- a:link {font-size: 10pt; text-decoration:none; color:#000000; } a:visited {font-size: 10pt; text-decoration:none; color:#000000; } a:active {font-size: 10pt; text-decoration:none; color:#000000; } a:hover {font-size: 10pt; text-decoration:none; color:#FF0000; } --> </style> しかし、全く見られないなど(おそらくブラウザのバージョンにも依存するのだと思いますが)の意見もあり、困っています。 個人的には一番いい形で見てほしいし、多くの人にも見てもらいたいのでどうすればいいだろうと悩んでいます。 そこでご存じの方に教えていただきたいのですが (1)あまり負担にならない程度にそれぞれのマシンごとの識別させたい、もしくは、対応できないブラウザの場合は、通常のデフォルトサイズのフォントで見てもらうようにする方法はないでしょうか? (2)cssやjavascriptなどは外部ファイルとしてhtmlファイルからリンクさせることが可能かと思いますが、実際の場合、htmlに埋め込む場合とリンクする場合で何か変わってくることはあるのでしょうか?(ひょっとして、複数のファイルにスタイルやスクリプトを適応させることができるというぐらいのメリットなのでしょうか?) お手数おかけしますがよろしくお願いいたします。

  • HTML
  • 回答数1
  • ありがとう数1

質問者が選んだベストアンサー

  • ベストアンサー
  • kokucho81
  • ベストアンサー率61% (157/255)
回答No.1

まず、お年寄りのことまで考えるのでしたら、フォントサイズの固定はかなりまずいです。(フォントを大きくできないからです) そこで、以下のようにしてみてはどうでしょう。 趣旨:IE4以降であれば、ベースフォントサイズを2にする。    (ただし、IEでもMAC版は大きくないので、普通の3にする)    NN4であれば、ベースフォントサイズを3にする。    NN6はIEと同じっぽいので同じにする。 <SCRIPT LANGUAGE="JavaScript"><!-- var agt=navigator.userAgent.toLowerCase(); if (agt.indexOf("mac")!=-1) { document.write("<BASEFONT size='3'>"); // マックであれば、ブラウザに関係無くデフォルトサイズ(不要だが後日の調整のため記述) } else if (agt.indexOf("win")!=-1) { if (document.getElementById || document.all) { // ウィンであれば、NN6 や Mozilla M14 及び IE4 以降はフォントを少し小さくする。 document.write("<BASEFONT size='2'>"); } else { // そのほかのブラウザなら、デフォルトサイズ(不要だが後日の調整のため記述) document.write("<BASEFONT size='3'>"); } } //--></SCRIPT> (1)の答え。 こんな感じで良いのではないでしょうか? この程度であれば1k程度。負担にはならないでしょう。 (2)の答え。  さて、私はここで、「不要だが後日の調整のため記述」と書いています。後日フォントのサイズを全体的に大きくしたいと思ったときには、「読み込みcss」にしておくと、ひとつのcssを修正するだけで、全てのHTMLのフォントサイズを修正することができます。  また、共通に読み込んでいるcssはキャッシングされるので、各々に埋めこんだ場合よりも、(初めて読み込みcssを読むとき以外は)はやくHTMLを表示させることができます。  WEBサイトのフォントや色合いには統一性があることが、一般的には望ましいと言えます。CSSを適切に使用すれば、「Aという統一性」を持たせていたWEBサイトを「Bという統一性」に全て切り替えたいときに、たった一つのファイルを修正するだけで良いということになります。  WEBサイトが巨大であればあるほど、共通の読み込みcssにしておくことは、後日すばらしいメリットにつながると、私は思います。

chikonojyo
質問者

お礼

ありがとうございます。CSSはまだまだ難しいことがいっぱいありますよね。教えていただいたことを参考にしながらちょっとずつためしていきたいと思っています。これからもいろいろと教えてくださいね。よろしくお願いいたします。

関連するQ&A

  • cssの外部ファイルでのリンクの装飾

    学校の課題で今HPを作っています。 外部ファイルでリンクの装飾をしようとしているのですが、 検索してもHEAD内に組み込むタイプのタグしか出てきませんでした。 <Style Type="text/css"> <!-- A:link { text-decoration:none; color:#000080; } A:visited { text-decoration:none; color:#000080; } A:active { text-decoration:underline; color:#000080; } A:hover { text-decoration:underline; color:#1e78ff; } //--> </Style> ↑このようなものを外部ファイルの場合はどう書けばいいのでしょうか? つまり↑の内容(リンクの装飾)を↓のような形式に書き換えたいということです。 #title{ font-size:24px; font-weight:bolder; font-family:Arial; } わかりづらくて申し訳ありませんが、どなたか詳しい方いましたらよろしくお願いします★

    • ベストアンサー
    • HTML
  • 外部CSSをかくには。

    HPのページひとつひとつにいちいちスタイルシートをかいていくのが 面倒になったので外部CSSでまとめてしまおうと 思ったのですが、上手くいきません。 ちなみにこうかいております↓ <STYLE TYPE="text/css"> <!-- BODY {  letter-spacing:7px;  line-height:15pt; } --> </STYLE> <style type="text/css"> <!-- body { scrollbar-face-color: #FF9900; scrollbar-highlight-color: #ffffff; scrollbar-shadow-color: #000000; scrollbar-3dlight-color: #000000; scrollbar-arrow-color: #000000; scrollbar-track-color: #ff9900; scrollbar-darkshadow-color: #ffffff; } --> </STYLE> <STYLE TYPE="text/css"><!--A{text-decoration:none;}A:hover{text-decoration:underline overline;}--></STYLE> <style type=text/css><!--a{text-decoration:none;}--></style> <style><!--BODY{font-size:8pt;}--></STYLE> どこか悪い点がありましたら教えてください。

    • ベストアンサー
    • HTML
  • 外部CSSの読み込みがうまくできない

    <head>~ <link href="basic.css" rel="stylesheet" type="text/css"> ~</head> ↓basic.css body{font-size:80%;color:#4a4a4a;} a:link{color:#004a95;text-decoration:none;} a:visited{color:#950095;text-decoration:none;} a:hover{color:#ff80c0;text-decoration:none;} という感じで外部CSSを読み込んでいるのですが、 ブラウザのoperaやfirefoxだとbody{font-size:80%;color:#4a4a4a;}の所だけ反映されません。 IEだとその部分も反映されます。 cssファイルに修正箇所があるのでしょうか? それとも外部cssを読み込むhtmlファイルの方に追加して記述しなければいけないタグがあるのでしょうか?

    • ベストアンサー
    • CSS
  • CSSの文字指定

    <style type="text/css"> <!--A:link {color:#000055; text-decoration:none; } A:visited {color:#000055; text-decoration:none; } A:hover {color:#ff3300; text-decoration:underline; }--></style> 上部はcssのリンクですが、これに加えて文字のサイズ指定とフォントのフェイス指定もしたいです。 たとえば、MSゴシック,平成角ゴシックなど。 どう加えればよいですか? <style type="text/css"> font:16px "MS Pゴシック",平成角ゴシック,</style>とやってもダメでした と

    • ベストアンサー
    • HTML
  • 外部スタイルシートについて・・・

    外部スタイルシートを書きたいのですが、 まだ良くわかってない点があるので教えてくださると嬉しいんですが・・・(TT) 今はHTMLのヘッダ内に書いております。 <style TYPE="text/css"> </style> Q1,上の部分は外部スタイルシートにすると、いらないのでしょうか? Q2,下の部分は外部スタイルシートにしてもスタイルシート内に、書く事ができますか?書くと不具合の原因になるのでしょうか? <!-- //忘れてしまうので、ここにコメント書きたいです。 できれば、スタイルシートを表示できない?ブラウザの人へ配慮したいと思うので、 <!-- は、あった方が自分が忘れなくていいかと思うのですが・・・。 Q3,ブラウザによって変になる、例えばとっても古いバージョンのネスケなどでも表示できるといいのですが 下記で問題あるのでしょうか? もし良かったら下の内容をこうした方がいいという アドバイスがあると嬉しいです。 質問の仕方が良くないかもしれませんが教えて下さい(TT) <style TYPE="text/css"> <!-- //忘れてしまうので、ここにコメント書きたいです。 a:link {font-size: 11pt; text-decoration:none; color:#C7A17E;} a:visited {font-size: 11pt; text-decoration:none; color:#C7A17E;} a:active {font-size: 11pt; text-decoration:none; color:#C7A17E;} a:hover {font-size: 11pt; text-decoration:underline; color:#FF9966;} td {font-size: 11pt;} span {font-size: 11pt;} BODY {font-size: 11pt; } LI {font-size: 11pt;} --> </style>

    • ベストアンサー
    • HTML
  • CSS、おかしいですか?

    CSSですが、本を見てやっています。 下記のように記述したのですが、書かなくてもよい記述とか、おかしいところ、ありますでしょうか? <style type=text/css> body{font-size:10pt} td {font-size:10pt; line-height:12pt} tr {font-size:10pt line-height:12pt} dive {font-size:10pt;line-height:12pt} a:link {font-size:10pt; font-weight:normal; font-style:normal; text-decoration:underline; text-align:left; vertical-align:; color:#990000} a:visited {font-size:10pt; font-weight:normal; font-style:normal; text-decoration:underline; text-align:left; vertical-align:; color:#990000} a:active {font-size:10pt; font-weight:normal; font-style:normal; text-decoration:underline; text-align:left; vertical-align:; color:#ff0099} a:hover {font-size:10pt; font-weight:normal; font-style:normal; text-decoration:underline; text-align:left; vertical-align:; color:#ff0099} </style>

    • 締切済み
    • CSS
  • CSSについて

    カーソルがルンク先文字にふれた時に色が変わり、 リンクしたあとリンク済みになるCSS( スタイルシート)はこれでいいでしょうか? リンク済みの色が変わりません。 <!-- <style type="text/css"> --><!--A:HOVER{position : relative;top:2px; left:2px;} </style> --> <style type="text/css"> <!--A:link {color:#000055; text-decoration:none; } A:visited {color:#000055; text-decoration:none; } A:hover {color:#ff3300; text-decoration:underline; }--></style>

    • ベストアンサー
    • HTML
  • CSS外部呼び出し

    今ジオシティーズでスタイルシートの外部呼出しをやってみたんですが、 いくつか繁栄されないものがあるんですが、記述で間違っている所がありましたら直していただきたいのです。 A { text-decoration: none; } A:visited {text-decoration:none} A:link {text-decoration:none} A:hover {color:red; text-decoration:underline} P { font-size: 12pt; } Body,Td {line-height:15pt;} Body {scrollbar-arrow-color: #000000; scrollbar-face-color: #ffffff;scrollbar-highlight-color: #ffffff; scrollbar-3dlight-color: #000000; scrollbar-track-color: #ffffff; scrollbar-shadow-color: #ffffff; scrollbar-darkshadow-color: #000000} これに更に A:link { color: blue; } A:visited { color: #8080FF; } A:hover { color: #FFFF00; } A:active { color: red; } を足したいのですが、可能でしょうか?

    • ベストアンサー
    • CSS
  • CSSの記述

    HTMLで普通のテキストのサイズを固定したいのですが、 うまくいきません。 何が間違っているのでしょうか。 一部のHTMLだけ、リンクの下線をはずしたいので、 HTMLに <LINK REL="stylesheet" HREF="css/style_win.css" TYPE="text/css"> <STYLE TYPE="text/css"> <!-- A { text-decoration: none; font-size: 10pt;} --> </STYLE> と記述。 こちらの方は大丈夫です。 だめなのは外部 css/style_win.css に body { font-size:10pt } と書いたほうがまったく制御していません。 初心者で、本もたくさん調べましたが わかりません。 どうかお願いいたします。

    • ベストアンサー
    • HTML
  • 外部CSSがうまく表示されません

    下記ファイル(index.html・sld01.html・sld02.html) について相互にリンクし、外部CSSで制御したいのですが、うまくできません。 1.index.html→sld01.html(CSS反映せずdefault表示)さらにsld02.htmlへはリンク切れとなる。 2.sld01.html→sld02.htmlの場合、sld01.htmlでの文字色が a:visitedになりsld02.htmlジャンプでCSS反映せずdefault表示となりindex.htmlへはリンク切れとなります。 どなたかご教授いただけませんでしょうか? index.html <html> <head>省略 <link href="/styles-site.css/navi.css" rel="stylesheet" type="text/css"> <link href="/styles-site.css/waku.css" rel="stylesheet" type="text/css"> </head> <body> <table>省略 <div> <a href="index.html">top</a> </div> <div> <a href="../sldset/sld01.html">gallery</a> </div> </table> </body> </html> sld01.html・sld02.html(slid.01へ) <html> <head>省略 <title>gallery</title> <link href="/css/base.css" rel="stylesheet" type="text/css"> </head> <body> <TABLE> <TBODY> <TABLE> <TBODY> 省略(java) <font size="-1"> <a href="/contents/sldset/sld02.html">slid.02へ</a></font> </TBODY> </TABLE> <font size="-1"> <a href="/contents/index/index.html">元のページに戻る</a></font> </TBODY> </TABLE> </body> </html> base.css(一部省略) a:link { color: #FFCC33; text-decoration: none; } a:visited { color: #CCCCCC; text-decoration: none; } a:hover { color: #66CCFF; text-decoration: none; } a:active { color: #FF3366; text-decoration: none; }