このセレクターは機能しません。それは本当に可能ですか?
こちらのhttp://jsfiddle.net/Hd7VZ/をご覧ください
.x-form-fieldset:last-child:not(x-item-hidden) {
border-bottom: 0;
}
解決策の1つは、このhttp://jsfiddle.net/8Fpyu/です。
このセレクターは機能しません。それは本当に可能ですか?
こちらのhttp://jsfiddle.net/Hd7VZ/をご覧ください
.x-form-fieldset:last-child:not(x-item-hidden) {
border-bottom: 0;
}
解決策の1つは、このhttp://jsfiddle.net/8Fpyu/です。
antejanによるコメントは正しいです、現在あなたはそのブロックに.x-form-fieldset
あるものを選択しています。内:last-child
を選択する場合、これは正しい構文です。:last-child
.x-form-fieldset
.x-form-fieldset :last-child {
border-bottom: 0;
}
ただし、最後のアイテムが非表示になっている場合でも:last-child
、それはまだ表示されているため、例を追加して:not
も何も達成されません。
例のこの小さな変更からわかるように、CSSには現在、非表示の要素を無視できるものはありません。代替ストライピングのような単純な効果も、要素を非表示にすることで壊れます。これはCSSの将来のバージョンに追加する価値があるかもしれません。それを、W3C CSSワーキンググループに提案して、セレクター仕様の将来のバージョンに追加する価値があるかどうかを確認してみてください(CSSセレクターレベル4が予定されています)現在、標準化プロセスを経ていますが、CSS5セレクターのアイデアは受け入れられています)。
それまでの間、別のマークアップアプローチを見つけるか、JavaScriptでハッキングすることに悩まされています。
構文エラーがあるようです。「。」を追加してください。クラスの場合は「#」、x-item-hiddenの前のIDの場合は「#」。
.x-form-fieldset:last-child:not(.x-item-hidden)
|.x-form-fieldset:last-child:not(#x-item-hidden)