• ベストアンサー
※ ChatGPTを利用し、要約された質問です(原文:フォントのサイズが変わってしまいサイトが崩れる)

フォントのサイズが崩れる?IEとファイヤーフォックスの対応方法は?

このQ&Aのポイント
  • IEとファイヤーフォックスでフォントのサイズが変わってしまい、自作サイトが崩れてしまいます。フォントサイズの設定方法について調査しました。
  • フォントのサイズが変わってしまいサイトが崩れる問題について、フォントサイズの設定方法を調査しました。IEとファイヤーフォックスでの違いや解決策についてまとめています。
  • 自作サイトで、IEとファイヤーフォックスでのフォントサイズの変化に悩んでいます。フォントサイズの設定方法を調査した結果、効果的な対策をまとめました。

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

  • ベストアンサー
  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.3

>それだとリンクにテキストを入れてフロートさせて、横並びのリンクは作れないのでしょうか?  二段になって表示それる。  ひとつのリンク内で二段にさせる。 あるいは、  サイズを指定してはみ出したものは隠す。  など、後自由に!!!  フォントだけじゃなく、ウィンドウサイズも様々です。それでも「崩れない」というより、利用に差し支えないようにするのが良いデザインです。  PDFじゃなHTMLとスタイルシートでページを作成する一番の、最大の目的が、『HTMLは、どんな環境からもWebの情報を利用できるようにすべきだという方針の下に開発されている。例えば、様々な解像度や色深度のグラフィックディスプレイを持つPCや、携帯電話、モバイル機器、音声入出力機器、帯域が広いコンピュータや狭いコンピュータ、等の( http://www.asahi-net.or.jp/%7Esd5a-ucd/rec-html401j/intro/intro.html#h-2.2.1 )』なのてすから・・ chrome以外のブラウザ--firefox,Opera,IE8以降で下記サイト  ⇒ナビゲーションリストを様々にデザインしてみよう。( http://www.ichiya.com/WebService/Howto/sample/HTML/nav/navigation1.html ) で、ブラウザのメニュー ⇒ 表示 ⇒スタイル(シート)にて 横並び、  は、はみ出し部分は消える 横プルダウン、横プルダウン2  は、最小の横幅を指定してあるのですが、フォントが大きくなるとはみ出した文字は消える。 ページの最上部、ヘッダーの下、ウィンドウの下部固定  は、リンクが折り返される。  印刷は、また違ったデザインで印刷されるでしょう。

noname#226032
質問者

お礼

ありがとうございます。お忙しい中大変ありがとうございました。 http://sample1.digi2.jp/snack.html こちらなのですが、IEとFOXで見ていただければリンクが崩れるのがお分かりになると思います。 >ひとつのリンク内で二段にさせる。 あるいは、  サイズを指定してはみ出したものは隠す。  など、後自由に!!! フォントのサイズをクロスブラウザで固定する方法はないのですね。 二番目はテキストリンクの入ったボックスを固定して文字の大きさでボックスが変更しないようにするということでしょうか? liにwidthしていをCSSでするのですかね? 一番目は横並びにしないで縦並びにするということでしょうか? まだ勉強不足なので恐縮ですが素人でも分かるように教えていただければ幸いです。

その他の回答 (4)

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.5

スタイルシートです。 リセットしたらダメです。 ^^^^^^^^^^^^^^^^^^^^^^^^  せっかくブラウザがもつスタイルシートを利用できないばかりか、複雑怪奇になってメンテナンス不可能になってしまいます。  必要なとき、必要な指定のみをしましょう。 あなたのスタイルシートの数分の一の量のはずです。 [abc.css] @charset "UTF-8"; div.header,div.section,div.footer{ _width:90%;max-width:960px;min-width:480px; _margin:0 auto; _position:relative; } h1,h2,h3,p{margin:0;line-height:1.6em;} div.header h1 img{display:block;width:100%;height:auto;} div.header div.nav ul,div.header div.nav ul li{ _list-style:none; _margin:0;padding:0; _text-align:center;line-height:2em; _font-size:0.85em; } div.header div.nav{ _width:auto; _border-radius: 5px 5px 0 0; _border-top: 6px solid #CC0033; _background-color:#CC0033; } div.header div.nav ul:after{ _display:block;content:"";white-space:pre;clear:left; _height:1px; } div.header div.nav ul li{display:block;float:left;width:8em;margin-left:2px;margin-bottom:2px;} div.header div.nav a{ _display:block;height:100%;width:100%; _background-image: url("http://sample1.digi2.jp/img/ul1.png"); } div.section,div.footer{margin-top:5px;} div.section h2{ _background:url(../img/hback.png);width:600px; _height:49px;text-align:center; _line-height:49px; } div.section table{ _border:6px solid #CCCCCC; _background-color:#CCCCCC; _border-radius: 10px; _box-shadow: 20px 10px 10px 1px #CCCCCC; _margin: 20px auto; _width: 90%; _border-collapse:separate; _cell-spacing:0; } div.section table tbody th,div.section table tbody td{ _background-color:white;padding:0.5em; _border:2px solid #CCCCCC;position:relative; } div.section table tbody th{ _background-image:url("../img/tableth.png"); _min-width:5em; } div.section table tbody td p{text-indent:1em;} div.section div.figure{ text-align:center; } div.section table tbody td div.figure img{ _padding:5px;border:1px gray solid; _max-width:90%; _height:auto; }

noname#226032
質問者

お礼

ありがとうございます。お忙しい中大変ありがとうございました。

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.4

>フォントのサイズをクロスブラウザで固定する方法はないのですね。  というか、固定してはならない。ユーザーが自由にフォントサイズを変更してもよいようにすべきと言う意味です。★最も大事な事です★  よって >二番目はテキストリンクの入ったボックスを固定して文字の大きさでボックスが変更しないようにするということでしょうか? >liにwidthしていをCSSでするのですかね?  の質問は考えるなと言う事です。  簡単なサンプル上げておきます。私はここ数年XHTML使って無いので少し苦労しました。(HTML5を意識したHTML4.01strictなもので・・何せ簡単ですからね。)  同じ系統の質問を何度も繰り返されていますが、No.2さんの回答も含めて、よく読んで理解してください。 ★Another HTML-lint 5( http://www.htmllint.net/html-lint/htmllint.html ) でチェック済みXHTML1.0 + CSS3 ★タブは_に置換してあるので戻すこと。 ★http:は、http:に置換してあるので戻すこと。 ★リキッドデザインですから、ウィンドウ幅を変えてもフォントサイズを変えても利用できるはずです。 ★スタイルシートは、同じディレクトリにstyleSheetフォルダーを作成していれること。 <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="ja" lang="ja"> <head> _<meta http-equiv="Content-Type" content="text/html; charset=utf-8" /> _ <meta http-equiv="content-style-type" content="text/css" /> _ <meta http-equiv="content-script-type" content="text/javascript" /> _<link rev="made" href="mailto:oruka1951@hoge.com" title="send a mail" /> _<link rel="start" href="/index.html" /> _<link rel="stylesheet" type="text/css" media="screen" href="./styleSheet/abc.css"> _<title>FOOD</title> </head> <body> _<div class="header"> __<h1><img src="./img/beefood.png" width="960" height="250" alt="FOOD" /></h1> __<div class="nav"> ___<ul> ____<li><a href="./">TOPPAGE</a></li> ____<li><a href="./snack.html">お菓子</a></li> ____<li><a href="./drink">飲み物</a></li> ____<li><a href="./food">主食</a></li> ____<li><a href="./meet">肉,魚,野菜</a></li> ____<li><a href="./lestrant">レストラン,旅行</a></li> ____<li><a href="./space">スペース12</a></li> ____<li><a href="./other">その他</a></li> ____<li><a href="./links">LINK一覧</a></li> ___</ul> __</div> _</div> _<div class="section"> __<h2>お菓子</h2> __<p>あああああああああ</p> __<table summary="味噌屋の味噌ピーナッツ"> ___<caption>味噌屋の味噌ピーナッツ</caption> ___<tbody> ____<tr> _____<th abbr="品名">商品名</th> _____<td>味噌屋の味噌ピーナッツ</td> ____</tr> ____<tr> _____<th abbr="感想">味</th> _____<td>75点 ______<p> _______特に癖もなく、普通においしい味噌味のピーナッツでした。周りの砂糖味噌がサクサクして良かったです。ただ、多少砂糖味噌がとれて袋の下にたまっていました。 ______</p> _____</td> ____</tr> ____<tr> _____<th abbr="産地">主要原料の産地</th> _____<td>ピーナッツ 九州産</td> ____</tr> ____<tr> _____<th abbr="安全性">安全性</th> _____<td>90点 ______<p>お土産にもらいました。その人が聞いた所によると、落花生と味噌が<strong>九州産</strong>だと店員さんが言っていたそうです。</p> _____</td> ____</tr> ____<tr> _____<th abbr="詳細">写真コメント</th> _____<td> ______<dl> _______<dt>売っている場所。</dt> _______<dd>知人はピーナッツを、博多の新幹線のムラ市場とかいうところで買ったそうです。</dd> ______</dl> ______<div class="figure"> _______<p> ________<img class="lengthwisepicture" src="./img/snack/peanuts.png" width="281" height="500" alt="味噌ピーナッツ" /> _______</p> ______</div> ______<div class="figure"> _______<p> ________<img class="sidewayspicture" src="./img/snack/limit.png" width="500" height="281" alt="原材料:落花生,味噌,砂糖,植物性油脂、内容量:120g、製造元:" /> _______</p> ______</div> ______<div class="figure"> _______<p> ________<img class="sidewayspicture" src="./img/snack/peanutsinside.png" width="500" height="281" alt="" /> _______</p> ______</div> _____</td> ____</tr> ___</tbody> __</table> __<table summary="まるごとスイカ飴"> ___<caption>まるごとスイカ飴</caption> ___<tbody> ____<tr> _____<th abbr="品名">商品名</th> _____<td>まるごとスイカ飴</td> ____</tr> ____<tr> _____<td colspan="2" style="font-weight:bold">・・・【中略】・・・</td> ____</tr> ___</tbody> __</table> __<div id="sidejava"> ___<h3>訪問数</h3> ___<script type="text/javascript" src="http://counter1.digidigi.jp/counter.php?id=10003123"></script> ___<noscript> ____<p> _____<a href="http://www.digidigi.jp/counter/"><img src="http://counter1.digidigi.jp/counter_img.php?id=10003123" style="border-style:none;" width="159" height="27" alt="カウンター" /></a> ____</p> ___</noscript> __</div>_ _</div> _<div class="footer"> __<p class="cyosakukenn">文章の無断転載、転用はご容赦ください。リンクはフリーです。 __Copyright(C)&nbsp;&nbsp;FOOD 紹介&nbsp;&nbsp;All Rights Reserved. __</p> _</div> </body> </html>

noname#226032
質問者

お礼

ありがとうございます。お忙しい中大変ありがとうございました。 スタイルCSSは別フォルダにしたほうがいいですね

  • tkmojo
  • ベストアンサー率50% (105/207)
回答No.2

根本的な話、フォントサイズが変わってレイアウトが崩れるデザインは「WEBデザイン」ではありません。 フォントサイズはユーザーが自由に変えることが出来るべきであり、それを前提としたデザイン設計をする必要があります。 ブラウザの種類はもちろん、その設定やOSやユーザーのPCに入っているフォント等でもテキストの表示は変わります。 WEBデザインとは文字サイズを固定させてユーザーに提供するものではなく、 どんなサイズや文字間隔で閲覧しても問題なく閲覧できるデザインを作成する事です。 これを踏まえたうえで、デフォルトのフォントサイズをブラウザごとに近づけるには、 以下のURLを参考にしてください。 http://webtech-walker.com/archive/2008/05/16032443.html

noname#226032
質問者

お礼

ありがとうございます。お忙しい中大変ありがとうございました。 結局根本的にテキストのサイズが変わっても崩れないように作らないといけないということでしょうか? それだとリンクにテキストを入れてフロートさせて、横並びのリンクは作れないのでしょうか? そこが回り込まなくなります。

  • ORUKA1951
  • ベストアンサー率45% (5062/11036)
回答No.1

★IEとファイヤーフォックスでフォントのサイズが変わってしまい、自作サイトが崩れてしまいます。  はサイトの設計そのものに問題があります。  紹介されたサイトでも、フォントサイズを指定するのはあくまでデザイン上の問題であって、崩れる/崩れないは一切言っていませんよ。!!それどころか『そうしてしまうとInternetExplorerでユーザーが文字サイズを変更できなくなってしまいます。』と言われていることから分かるように、文字サイズはユーザーで変更できることは必須と考えていますよ。  フォントサイズが変わっても崩れるのは、フォントサイズの指定以前の問題です。フォントサイズが変わっても配置が崩れてはなりません。!!! ★HTMLは文書構造だけを記述し、プレゼンテーションはスタイルシートで指定します。 ★スタイルシートにCSS(カスケーディングスタイルシート)が使われるのは、カスケーディングと言う極めて重宝な仕組みがあるからです。  カスケーディング(優先順位/詳細度/継承など)を知らないでCSSを使うことはありえません。  (出現順)スタイルシートは優先順位/詳細度が同じでしたら後述のもので上書きされます。  スタイルシートは視覚系ブラウザのためだけではありません。スクリーンリーダー、プリンター、展示出力、携帯電話やテレビ画面などに対しても指定されています。ブラウザが持っている一般的なスタイルシート(優先度は最も低い)  ⇒附記A: HTML 4.0におけるスタイルシートの例( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/sample.html )  の最後の@media print {}はプリンターのための指定ですし、@media speech {}はスクリーンリーダーのための指定てす。これらをmedia=allで上書きしてしまうのは、とってもまずいです。 <link rel="stylesheet" href="reset.css" type="text/css" />  もそうです。mediaは書かれていませんが意味は同じです。resetするのはとってもまずいです。!!  5.セレクタ( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/selector.html )  6.値の割り当て、カスケード処理、継承( http://www.swlab.it.okayama-u.ac.jp/man/rec-css2/cascade.html ) の二つはしっかり読んで理解しておくこと。 ★視覚弱者がフォントサイズを変更したらデザインが崩れるのは、とてもまずいです。参考にされたページにも「ユーザーが文字サイズを変更できなくなってしまいます。」と、そう書いてありますよ。 ★視覚系ブラウザのうちブラウザ対象にスタイルシートを書くのでしたら media="screen"と指定しておくべきです。  永続的スタイルシート(media,title属性のないもの)には、フォントの種類とかを書いておくと良いでしょう。

noname#226032
質問者

お礼

ありがとうございます。お忙しい中大変ありがとうございました。 結局根本的にテキストのサイズが変わっても崩れないように作らないといけないということでしょうか? それだとリンクにテキストを入れてフロートさせて、横並びのリンクは作れないのでしょうか? そこが回り込まなくなります。

関連するQ&A

専門家に質問してみよう