-1

ドキュメントの冒頭で:

<link type="text/css" rel="stylesheet" href="css/resources/css/lessons-matching-test.css"/>

ドキュメントの本文

<div class="tests">
  <a href="" style="display: block;">Link</a>
</div>

リンクされたCSSスタイルシートで、この新しいスタイルを追加しました

.tests
{
     background-color: blue;
     /* some stuff */
}

class=testsdivに追加したときにスタイルが適用されないのはなぜですか?

4

3 に答える 3

2

新しい HTML ファイルを作成してコードを挿入すると (外部の css および js ファイルなしで)、期待どおりの結果が得られます。

<!DOCTYPE html>
<html lang="en"><!-- Forgot the quotes -->
<head>
    <meta class="metatype" content="matching-test">
    <meta charset="UTF-8">
    <style type="text/css">
        .tests
        {
             background-color: blue;
             /* some stuff */
        }
    </style>
</head>
<body>
    <div class="tests">
        <a href="" style="dispaly: block;">Link</a>
    </div>
</body>
</html>

js ファイルや css ファイルを除外するとどうなりますか?

于 2013-03-15T23:33:58.030 に答える
1

2つのケース

  1. あなたのlessons.jsは.testsで何かをしています

    <script type="text/javascript" src="js/resources/js/libs/lessons.js"></script>
    
  2. あなたのcssはあなたが変更できないように.testsを重要なものとして設定します

    <link   type="text/css" rel="stylesheet" href="css/resources/css/lessons-matching-test.css"/>
    
于 2013-03-15T23:42:43.850 に答える
1

問題は、キャッシュが原因で古いスタイルが使用されていることです。ブラウザが古いスタイルを使用しているため、新しいスタイルは表示されません。これを修正または変更するには、いくつかの方法があります。

これを回避する手法は「キャッシュバスティング」と呼ばれます。サーバー側のハンドラーが関係している場合、これはより高い言語で処理できます。ただし、アクセスできない場合は、通常、バージョン名が使用されます。

lessons-matching-test-v1.css

変更を加えるたびにこのようにcssファイルに名前を付けると、その新しいバージョンを使用してキャッシュできるようになります。これまでのバージョンでは、数を増やすため、バージョン2はlessons-matching-test-v2.cssになります。

別のアプローチは、新しいバージョンを作成するたびにパスにクエリ文字列を添付することです

href="css/resources/css/lessons-matching-test.css?v=1.0"

次に、新しいバージョンを作成するたびに、クエリ文字列を変更します。これにより、バージョン2は次のようになります。href="css/resources/css/lessons-matching-test.css?v=2.0"

于 2013-03-15T23:44:03.727 に答える