50

CSS では、兄弟が出力で上にある場合、プラスで兄弟を選択する方法はありません。html の前の要素です。

例えば

<div class="first">
<div class="second">

.second + .first { style applied to div.first}

SASS/SCSSでこれを行う方法はありますか?

4

5 に答える 5

65

SASSはすべてのCSS3セレクターをサポートしています。兄弟+はその1つです。しかし、それはいくつかの追加機能をもたらしません。それはあなたができることを意味します

first {
  + second { 
     font-size: smaller;
  }
}

しかし、あなたはそれで親に影響を与えることはできません...

追伸:CSS4の機能のようです:)

于 2013-03-06T21:08:19.360 に答える
5

気持ちはわかりますが、これは本当に面倒です。私はそれを行う簡単な方法を見つけました。

HTML

<div class="mainmenu">
  <div class="subnav">
    <ul>
      <li>Whatever</li>
    </ul>
  </div>
</div>

SCSS

CSS は、 の最初の子を指してdiv "mainmenu"います。> class "subnav"

 .mainmenu{
      & > .subnav{
         // Child Selector SCSS HERE
      }
  }

@thgaskell、あなたは私が間違っていることを証明しました:)私のコードは正常に動作し、縮小されたコードの6KBを失いました! 以下のコメントが通知された方法として、コードを更新しました。

于 2013-03-19T14:50:39.957 に答える
-2

私はJqueryを使用することになりました。仕事を終わらせます:)(申し訳ありませんが、別のルートに行ったため、サンプルコードはもうありませんが、「子にクラスがある場合は、これにクラスを追加する」のような非常に単純なものです。:)

于 2013-03-20T09:41:54.640 に答える
-6
div { & + & { margin-left: 15px; background: firebrick;}}

それは仕事ですそれを試してみてください。

于 2015-11-05T07:40:42.217 に答える