\r\n\t \r\n\t\r\n\t\r\n\t\r\n\t\r\n\t\r\n\r\n```","answerCount":3,"upvoteCount":0,"datePublished":"2015-05-11T04:53:07.756Z","dateModified":"2022-01-12T10:55:45.698Z","suggestedAnswer":[{"@type":"Answer","text":"本当にいろんな可能性があるのでなんとも言えないのですが、\r\nIEだけの問題だとすれば、質問に IEのバージョンも記載されたほうがいいと思います。\r\nIEの独自仕様としては、キャッシュの扱いが独特ですでにキャッシュされているものについては\r\n読み込み済みイベントを発火させない場合があったりします。などと言っても問題は特定されにくいので、\r\n次のようなチェックをすることをオススメします。\r\n\r\n0. CSSファイルを別立てしたことによる問題か、CSSの内容に問題があるのか を切り分けるために、cssの内容を、一旦HTMLの styleタグ内に入れてしまって、HTMLのみでテストしてみる。\r\n0. ここで画面が崩れれば、CSS/HTMLの内容の問題で、既に回答にあるようにIEのQuirksモード(IE7,IE8互換モード) と CSS/HTMLの記載が合っていないことが問題。HTMLのDOCTYPEについても調査が必要になります。\r\n0. 画面の崩れが起きなかった場合、CSSに@import タグなどCSS内での別リソースのロードがあるかどうか、あれば 一旦なくして(全部とりこんで)調査。なければ CSSファイルのダウンロードに失敗していることになります。\r\n0. CSSのダウンロードに失敗している場合、ダウンロードのタイミングが遅すぎたか、サーバ側がリソースを返せなかったかのどちらか。サーバ側が返せなかったとしたら、mime設定がルースなケースが一番多い。大穴としては、サーバ側が多重化されていて、当該cssファイルを置いていないサーバに運悪く当たっちゃった場合。(これも結構あります。)\r\n0. 全く違う観点としては、CSSが何らかの理由で動的に作成されているケース。この場合はサーバ側処理の問題ですね。\r\n\r\nというわけで、ごめんなさい 分かりません!","dateModified":"2015-05-11T07:49:36.734Z","datePublished":"2015-05-11T07:49:36.734Z","upvoteCount":0,"url":"https://teratail.com/questions/9675#reply-13879","comment":[{"@type":"Comment","text":"これだけの情報で考えられるケースを搾り出していただきありがとうございます!\r\n自分はサーバーにあまり詳しくないのでサーバーの多重化などはさきほど調べて知りました。サーバーに関しては現在AWSを利用しているのですがサーバーの多重化などのカスタマイズや設定はしていません。でも大本で多重化を行っていてもおかしくないですよね。とりあえずもう少し詳しく内容を追記したいと思います!","datePublished":"2015-05-11T08:26:24.745Z","dateModified":"2015-05-11T08:26:24.745Z"}]},{"@type":"Answer","text":"おそらく、症状からしてHTMLがIEの該当のバージョンに対応していないのが問題かと思います。\r\nまずはデザインが崩れたHTMLソースおよびCSS、JSをどこかに持っていって\r\n検証をすれば問題がクリアになるかと思います。","dateModified":"2015-05-11T05:35:46.605Z","datePublished":"2015-05-11T05:35:46.605Z","upvoteCount":0,"url":"https://teratail.com/questions/9675#reply-13867","comment":[{"@type":"Comment","text":"たまに、とありますので、例えば Webサーバが負荷分散のために多重化されていて、どれか1つのサーバでの設定が足りてないか、そのサーバで提供しているリソースが変なのかもしれません。うーん やっぱりこの質問だけじゃ分からないですねー","datePublished":"2015-05-11T07:31:52.310Z","dateModified":"2015-05-11T07:31:52.310Z"},{"@type":"Comment","text":"お返事ありがとうございます!\r\nIEのバージョンはとても気にしていましたがやはり、それも要因になりかねないのですね。。もう少し自分で時間に余裕があるかぎり引き続き調査してみたいと思います!","datePublished":"2015-05-11T08:22:46.080Z","dateModified":"2015-05-11T08:22:46.080Z"}]},{"@type":"Answer","text":"原因はいろいろ考えられますので、まずは症状が発生する範囲を明確にしていくことが必要かと思います。\r\n表題に「IEで」とありますが、IEでのみ、発生しているのですか? もし、FirefoxやChromeでは発生していないなら、サーバ側は疑う必要が少なくなりますね。","dateModified":"2015-05-11T04:57:40.148Z","datePublished":"2015-05-11T04:57:40.148Z","upvoteCount":0,"url":"https://teratail.com/questions/9675#reply-13861","comment":[{"@type":"Comment","text":"mimeが適切に付与されていない場合に起こることが有るそうなので、その場合はサーバ側修正になりますね。枝刈りのために一度見てみてもいいかもしれません。\r\n","datePublished":"2015-05-11T07:29:53.320Z","dateModified":"2015-05-11T07:29:53.320Z"},{"@type":"Comment","text":"お返事ありがとうございます!\r\nちょっと情報が少なかったようなのでもう少し詳しく記載させていただきます!\r\nとりあえずサーバー側とクライアント側両方可能性があるということですね。。","datePublished":"2015-05-11T08:20:03.216Z","dateModified":"2015-05-11T08:20:03.216Z"},{"@type":"Comment","text":"表示が乱れたときのTomcatのアクセスログはどうなっていましたか。\r\nCSSがGETされているはずですが、200 OKですか? 時間がかかっていた形跡などありますか?","datePublished":"2015-05-12T00:54:43.590Z","dateModified":"2015-05-12T00:54:43.590Z"},{"@type":"Comment","text":"もっというと、静的ファイルまでTomcatで提供するのは、どうなのかな。Tomcatの前にApacheを置いて、WebアプリについてはApacheからmod_proxy_ajpでTomcatに中継しつつ、静的ファイルはApache側に置くように、私ならしますけど。","datePublished":"2015-05-12T00:56:21.614Z","dateModified":"2015-05-12T00:56:21.614Z"}]}],"breadcrumb":{"@type":"BreadcrumbList","itemListElement":[{"@type":"ListItem","position":1,"item":{"@id":"https://teratail.com","name":"トップ"}},{"@type":"ListItem","position":2,"item":{"@id":"https://teratail.com/tags/HTML5","name":"HTML5に関する質問"}},{"@type":"ListItem","position":3,"item":{"@id":"https://teratail.com/questions/9675","name":"IEでたまにCSSの読み込みに失敗し、デザインが崩れる"}}]}}}
自作したCSS,HTML,Javascriptファイル等をサーバーに設置し、ウェブサイトを製作してテストを何回も行っていると、たまにCSSが読み込めずデザインが崩れてしまうことがあります。
どのような原因によっておこるものなんでしょうか?そして、これはサーバー、クライアントのどちらかで対策ができるのでしょうか?
どなたか知っている方がいらっしゃいましたらご教授ください。
[情報を追記しました 05/11 17:31]
とりあえずコメントで頂いた内容に基づいて現在調査をしています。
・開発環境
Tomcat
Servlet
・サーバー
AWS
・OS
Cent OS
・使用したブラウザ
IE 8 ~ 11
Firefox(最新)
Chrom(最新)
・使用したCSS
Bootstrap v3.0.2
・発生手順
IE11を使ってクライアントからJavascriptを使ってサーバーのAPIを呼び、DB処理をした後、
簡単なresponseをもらって。別ページに遷移した際にページが崩れました。今のところ
2度発生しただけで、他のバージョンやブラウザで発生は見られません。
(テスト不足もありますが、メインはfirefoxで確認しているのでIEではあまり確認していません。)
・読み込み失敗したHTMLのヘッダー
lang
1<!DOCTYPE html>
2<html lang="ja">
3<head>
4 <meta charset="utf-8" />
5 <meta http-equiv="X-UA-Compatible" content="IE=edge">
6 <meta name="viewport" content="width=device-width, initial-scale=1">
7 <title>xxxxxxx</title>
8 <!-- Bootstrap -->
9 <!--<link href="content/bootstrap.min.css" rel="stylesheet">-->
10 <link href="bootstrap.min.css" rel="stylesheet">
11 <link href="mixins.css" rel="stylesheet">
12 <!-- HTML5 shim and Respond.js for IE8 support of HTML5 elements and media queries -->
13 <!-- WARNING: Respond.js doesn't work if you view the page via file:// -->
14 <!--[if lt IE 9]>
15 <script src="https://oss.maxcdn.com/html5shiv/3.7.2/html5shiv.min.js"></script>
16 <script src="https://oss.maxcdn.com/respond/1.4.2/respond.min.js"></script>
17 <![endif]-->
18 <!--<script src="http://ajax.googleapis.com/ajax/libs/jquery/1/jquery.min.js"></script>-->
19 <script src="jquery.min.js"></script>
20 <script src="bootstrap.min.js"></script>
21 <script src="xxxxxxx.js?date=2015xxxxxxx"></script>
22</head>
本当にいろんな可能性があるのでなんとも言えないのですが、
IEだけの問題だとすれば、質問に IEのバージョンも記載されたほうがいいと思います。
IEの独自仕様としては、キャッシュの扱いが独特ですでにキャッシュされているものについては
読み込み済みイベントを発火させない場合があったりします。などと言っても問題は特定されにくいので、
次のようなチェックをすることをオススメします。
- CSSファイルを別立てしたことによる問題か、CSSの内容に問題があるのか を切り分けるために、cssの内容を、一旦HTMLの styleタグ内に入れてしまって、HTMLのみでテストしてみる。
- ここで画面が崩れれば、CSS/HTMLの内容の問題で、既に回答にあるようにIEのQuirksモード(IE7,IE8互換モード) と CSS/HTMLの記載が合っていないことが問題。HTMLのDOCTYPEについても調査が必要になります。
- 画面の崩れが起きなかった場合、CSSに@import タグなどCSS内での別リソースのロードがあるかどうか、あれば 一旦なくして(全部とりこんで)調査。なければ CSSファイルのダウンロードに失敗していることになります。
- CSSのダウンロードに失敗している場合、ダウンロードのタイミングが遅すぎたか、サーバ側がリソースを返せなかったかのどちらか。サーバ側が返せなかったとしたら、mime設定がルースなケースが一番多い。大穴としては、サーバ側が多重化されていて、当該cssファイルを置いていないサーバに運悪く当たっちゃった場合。(これも結構あります。)
- 全く違う観点としては、CSSが何らかの理由で動的に作成されているケース。この場合はサーバ側処理の問題ですね。
というわけで、ごめんなさい 分かりません!
おそらく、症状からしてHTMLがIEの該当のバージョンに対応していないのが問題かと思います。
まずはデザインが崩れたHTMLソースおよびCSS、JSをどこかに持っていって
検証をすれば問題がクリアになるかと思います。
原因はいろいろ考えられますので、まずは症状が発生する範囲を明確にしていくことが必要かと思います。
表題に「IEで」とありますが、IEでのみ、発生しているのですか? もし、FirefoxやChromeでは発生していないなら、サーバ側は疑う必要が少なくなりますね。
15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.29%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる
質問する
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2015/05/11 08:26