1

私たちのWebデザイナーの1人は現在サイトで作業しており、HTML5要素を使用しています。HTML5要素は、十分に文書化されたHtml5Shivを使用して古いブラウザーでスタイルアップしています。

http://css-tricks.com/html5-innershiv/

彼女は今日、かなり奇妙な行動を報告しましたが、これが原因のようです。当初、それは非常に混乱し、次のようなことをしました。

「ページは正常に表示されます。更新すると正常に表示され、数回更新されますが、HTML5要素にスタイルが適用されない場合があります。」

現在の最良の理論は、shivが十分な速さで開始されておらず、新しい要素が登録される前にページが読み込まれるというものです。誰かがシブを含めて、残りの要素の前にロードされて解析されることを確認する確実な方法を提案できるかどうか疑問に思っていたので、それらは間違いなくスタイリングされます。

編集(詳細)

Shivは、タイトル/メタタグのすぐ下の頭に含まれています。

<!--[if IE]> <script type="text/javascript" src="http://html5shiv.googlecode.com/svn/trunk/html5.js"></script> <![endif]-->

スタイリングされているビットはフッターにあり、クロスサイトです。マーケティングチームが使用するCMSを利用しているため、ページのサイズが変わるため、正確なページサイズを指定することはできません。ページサイズが問題で回避策がない場合は、誰かが私に知らせてもらえますか?これは、基本的にこのプロジェクトでHTML5を使用できないことを意味します(または、少なくとも余分なものを追加する必要があります)レイアウトが狂わないようにするためのdivなどのマークアップ)

編集2

残念ながら、私がコードを投稿する可能性はありません。コードは本当にあいまいな状況でのみ再作成可能であり、プロジェクトは現時点で「トップシークレット」とマークされています:(誰も知らない場合は、「誰もが知っている」のいずれかのケースだと思いますそれは起こりますが、ちょっとそれを無視します」または単にそれがシブ以外のものであるということです。

4

1 に答える 1

2

html5shivコード(それほど多くはありません)を同じ場所のブラウザーに直接配置して、それが役立つかどうかを確認することができます。そうすれば、問題を引き起こしている可能性のある別のHTTPリクエストを待機しなくなります。

編集 私はあなたが単純なhtml5ShivではなくinnerShivについて話していることに気づきました。innerShivは、jQueryやAJAXなどを介してHTML5要素をその場で挿入する場合にのみ必要です。それはそれのように聞こえないので、これはあなたがしていることですか?もしそうなら、あなたが必要とするのはhtml5Shivだけです。

EDIT2ああ、上記のコードはhtml5InnerShivではなくhtml5Shivを使用しています...

于 2012-04-04T09:36:41.063 に答える