1

基本的に私がやろうとしていることはこれです...私は昼夜を問わず背景を変更したいサイトを持っています...だから一日目((午後7時頃まで))そして夜7時頃まで午前かそこら.. body タグのクラスを変更して、CSS ページの 2 つの異なる body 要素を反映するスクリプトを配置しています..

.night body {
    font-size:18px;
    color:#999;
    background-image:url(nightwolfwall.jpg);
    background-attachment:fixed;
    background-repeat:no-repeat;
    background-color: #000; 
}
.day body {
    font-size:18px;
    color:#999;
    background-image:url(daywolfwall.jpg);
    background-attachment:fixed;
    background-repeat:no-repeat;
    background-color: #000; 
}

しかし、私の人生では..それらを機能させることができません..bodyタグのクラスを手動で変更して、クラスIDをテストしようとしました..そして何も..CSSで何か間違ったことをしていますか?

4

9 に答える 9

3
.day body{

する必要があります

body.day{
  • 最初のものは<body>、クラスを持つ要素内にあるに適用されますday
  • <body>私はクラスに適用されdayます。

したがって、次のようになります。

.night body{

次のようにする必要があります。

body.night{
于 2012-11-02T10:51:26.157 に答える
2

body.day代わりにとbody.nightセレクターを使用してください。

.day bodybodyは、 class を持つ任意のタグの下にネストされたタグを意味しdayます。

于 2012-11-02T10:51:39.713 に答える
2

「夜/日のメンバーである要素(任意のタイプ)の子孫である本体要素」を意味する子孫セレクターを使用しています。

クラスのメンバーであるbody 要素を一致させるには:

body.classname
于 2012-11-02T10:51:50.690 に答える
1

この方法を与える必要があります:

body.night {}
body.day {}

今与えている方法で、<html>タグに適用できます。したがって、次のようにします。

<html class="day">

<html class="night">

この場合に機能します。:)

于 2012-11-02T10:54:11.460 に答える
1

使用する

body.night {

bodyクラスの を選択しますnight

于 2012-11-02T10:51:27.397 に答える
1

body.night { /* CODE */ }

body.day{ /* CODE */ }

CSS ルールは、基本的に階層的に記述されます。最も抽象的な要素が左で、最も具体的な要素が右です。つまり、別の要素の内側にある要素は、常に前者から正しいということです。

クラスが要素に割り当てられるとき、要素に接続されたクラス (ID と同じ) を記述し、その間にスペースを入れません。

body.dayと同じではありませんbody .daybody後者は、 class を持つ内部の要素をターゲットにしていdayます。これは任意の要素です。

また、このコードを使用する場合、要素の深さに制限がないことに注意してください。例:body .day可能な HTML 構造がたくさんあります。例えば:

<body>
  <div class="day">
  </div>
</body>

だけでなく:

<body>
  <div>
    <div>
      <div>
        <div class="day">
        </div>
      </div>
    </div>
  </div>
</body>

注:を使用して、要素の直接の子のみを選択できます。>たとえば、すぐ内側にあり、 class を持つbody > div.testdiv のみをターゲットにします。bodytest

于 2012-11-02T10:51:38.313 に答える
1

body タグに「夜」のクラスがある場合は、次のように CSS で参照する必要があります。

body.night {
// css styles
}
于 2012-11-02T10:51:40.373 に答える
0

css を次のように変更します

body.night { ... }

または、代わりに夜/昼のクラスを html 要素に追加します。

于 2012-11-02T10:55:33.000 に答える
0

body タグには html 以外の囲みタグがないため、css クラスは

CSS

body {
   margin:0;
   /* other property */
}

.night {
    background:#000;
}

HTML

<html>
  <head>
  </head>
  <body class="night">
  </body>
</html>
于 2012-11-02T10:53:06.767 に答える