3

私はこれについてかなり長い間読んでいます...そして私は困惑しています-

次の違いは何ですか?

Yii::app()->clientScript->registerCssFile(Yii::app()->baseUrl.'/css/some-file.css');

<link rel="stylesheet" type="text/css" href="<?php echo Yii::app()->request->baseUrl; ?>/css/some-file.css 

パフォーマンスの問題ですか、それとも構文が異なるだけですか?

ありがとう、ダニー

4

2 に答える 2

5

registerCssFile<head>ビューのどこかでファイルを呼び出したとしても、常にタグの間にファイルを登録します。これは、HTML の検証 (a <link>in<body>は無効) を気にしているが、ビューに CSS ファイルを含めたい場合に役立ちます。

registerCssFileCSS は必要な場合 (および必要な場合) にのみ登録されるため、実際にはパフォーマンスが向上します。

于 2012-06-27T14:56:59.627 に答える
0

使い方は同じです。これを確認するには、(ブラウザで) ページのソースをチェックし、Yii::app()->clientScript->registerCssFile が作成するステートメントをチェックします。

ただし、clientScript を使用すると、HTML ファイル内のスクリプトの位置を制御できます。http://www.yiiframework.com/doc/api/1.1/CClientScript#registerScriptFile-detailをチェックして、POS_HEAD、POS_BEGIN、POS_END を探してください。

おそらくもっと重要なことは次のとおりです。MVC の哲学では、HTML 出力に関連するすべてのものをビュー ファイルに含める必要があります。Yii::app()->clientScript を使用すると、ビュー ファイル内から CSS および JS ファイルを追加できます。そして、それがあなたが望むところです。

于 2012-06-27T15:00:20.730 に答える