2

いくつかの複雑なソフトウェアを作成するために私の会社に雇われた開発会社があります。.NET フレームワークを使用してコードを記述しているようです。これが厳密に .NET に関連するものかどうかはわかりませんが、HTML の構造を調べていると、インライン CSS がたくさんあることに気付きました。フォーマット内の多くの div のみ <div style="position: absolute; top:177px; left:229px; width: 710px; height: 306px;" class="EventLabel Event_bg_red"></div>

長い ID を持つ要素もあります。id="ctl00_ctl00_ctl00_MainContent_MainContent_BodyContent_grid_DXDataRow0"

これらの長いテキスト文字列と長いインライン スタイル宣言は、サイトのパフォーマンスに影響しますか? (遅延の問題がいくつかあることに気付きましたが、それがスクリプトによるものなのか複雑な HTML によるものなのかわかりません) または、.NET がこの HTML を動的に書き込むため、これらすべてのposition:absolute値を計算するのに長い時間がかかる可能性があります。それとも、Web ページをレンダリングするブラウザーに関しては、このようなテキストの文字列は無視できるのでしょうか?

4

4 に答える 4

4

私はそれが物事の組み合わせであると疑っています。

まず、ファンキー ID は .NET のものであり、サイト内の要素の階層を示しています。最適化および/または無効にすることができますが、通常は無害です。ページのソースを見て、VIEWSTATE と呼ばれるフォーム変数を探します - 私はそれが大きいと思います (彼らが使用しているすべての ID は、ViewState に貢献する多くのサーバー側コントロールを意味します)、それは問題になる可能性があります.

長い/動的に生成された ID は、ページ上の要素とやり取りするクライアント側コードの記述を難しくする可能性もあります。

すべてのインライン スタイルは、おそらく、レイアウトを行うために使用している WSYIWYG エディターからのものです。これらのツールは、厄介な HTML を生成することがよくありますが、「仕事はやり遂げてください」。

懸念される唯一のパフォーマンスの問題は、ブラウザに配信されるコンテンツのサイズです。これは、長い ID とインライン スタイルにより大きくなります。一度そこにパフォーマンスの問題があるとは思えません。

ただし、後でサイトのレイアウトを変更するのが難しくなる可能性があります。

お役に立てれば

于 2012-07-11T20:32:11.927 に答える
0

HTML がキャッシュされないのと同様に、インライン CSS はキャッシュされません。外部 CSS ファイルはキャッシュされ、ユーザーのブラウザーによって再利用されるため、パフォーマンスが低下します。(Javascript インラインと外部ファイルにも同じことが当てはまります。)

インライン CSS はメンテナンスも難しく、HTML ファイル自体が大きくなります。長い ID 自体は問題ではないと思います。

于 2012-07-11T20:32:28.563 に答える
0

これらの ID は、ASP.NET WebForm フレームワークで自動生成されます。それらがパフォーマンスの問題であるかどうかを確認するには、Chrome または Firefox で利用可能なページ スピード プラグインを使用できます。ブラウザは通常、それらをハッシュマップに保存するため、それらを探すのは非常に高速であるため、この時点での私の推測ではそうではありません。

https://developers.google.com/speed/pagespeed/

レンダリング時間については、ページ インスペクタ (組み込みの chrome/Safari) または firebug (Firefox のプラグイン) を使用します。通常、ネットワーク ペインには、各リソースに費やされた時間が表示されます。

私の推測では、ラグはデータがクライアントに送信される前のものです。WebForm は、ページ上に多数のコントロールがある場合、またはデータベースからフェッチするデータが大量である場合、リソースの使用量がかなり大きくなる可能性があります。ViewStateの使用状況も確認してください。(それが何であるかわからない場合は、Google で確認してください) WebForm は、注意しないとページに数百キロバイトのデータを押し込む可能性があり、それらのデータはボタンをクリックするたびにサーバーに送り返されます。

良い狩り!

于 2012-07-11T20:34:53.743 に答える