BEM の命名規則に従おうとしていますが、次の実装方法がわかりません。さまざまなテーマでスタイル設定する必要がある「ツールチップ」ブロックがあります。「デフォルト」のテーマを適用するとしましょう。
<div class="tooltip tooltip_theme_default"></div>
ツールチップは、さまざまな位置の要素の周りに配置できます。これは、ブロックに「水平位置」および「垂直位置」修飾子を追加する必要があるように思えます。
<div class="tooltip tooltip_theme_default tooltip_horizontal-position_center tooltip_vertical-position_top"></div>
ここで、テーマとその位置の両方に応じて、ツールヒントに装飾を表示する必要があります。複数のクラスセレクターが必要だと思いますが、BEM のドキュメントでこのような複数のセレクターの例を見ることができません。
.tooltip_theme_default.tooltip_horizontal-position_center.tooltip_vertical-position_top::before {
/* styles */
}
それは BEM 仕様で許可されていますか?
デメリットは何か思いつきますか?
フラット クラス セレクターのみを使用するようにコンポーネントを再考する必要がありますか?