私は一度に1つしか表示されないdivのリストを持っています。これは、親が持つ属性値に依存します。たとえば:親と同じ属性値を参照するCSSセレクタ
HTML:
<div id="parent" data-something="c">
<div class="children" data-something="a"></div>
<div class="children" data-something="b"></div>
<div class="children" data-something="c"></div>
<div class="children" data-something="d"></div>
</div>
はCSS:
.children
{display: none;}
#parent[data-something="a"] .children[data-something="a"]
{display: block;}
#parent[data-something="b"] .children[data-something="b"]
{display: block;}
/* etc. */
は、私は、このセレクタは、親属性値に基づいて、対応する子供たちを選ぶことができます方法はありますか?
ような何か:
#parent[data-something="*"] .children[data-something="*"]
{display: block;}
背後にある理由は、私は私が持っていることと、私は方法があるかどうかを確認したい、純粋なCSSで、あらゆる可能性を書いて避けるために、どのように多くの子どもたちわからないです。
最初の例で行ったように、唯一の方法はすべてのオプションに対して行うことです。私はあなたがそれらのデータ属性を出力するためにサーバー側言語のいくつかの並べ替えを使用していますか?そうであれば、あなたのサーバ側の言語は複雑なことをするべきです(すべてのCSSはスタイリングのためのものです)。そして属性が親属性と一致するときにクラスを追加してください。 – Pete
@PeteこれがおそらくJavaScriptは何アイテムあるのか分からず、CSSで1000個の可能性を生み出さないことを好みます。 – Alvaro
@NenadVracarこの提案をありがとう。さて、JavaScriptを使用して親が変更されています。あなたの提案は同じですが、それ以外の方法では問題は解決しません。 – Alvaro