我有几个div。其中一人有class="active"
。我希望隐藏所有div(display:none;
),但.active
除外。选择器应该是什么?
答案 0 :(得分:5)
你试过吗?
div { display: none; }
div.active { display: block; }
PS。我会补充说明。当您在选择器中指定一个类时,它在级联逻辑中具有更高的优先级(因为它更高specificity)而不仅仅是一个div(因为单个div更通用,更宽)。所以没有必要使用!important
或类似的东西。
答案 1 :(得分:1)
例如:
div:not(.active) {display:none;}
正如Paul在下面评论的那样,IE8及以下版本不支持此选择器。但考虑到您添加了CSS3
标记并专门要求提供选择器,这可能不是问题。有关跨浏览器的解决方案,请参阅@mkdotam answer。
答案 2 :(得分:1)
div:not(.active){
display: none;
}
答案 3 :(得分:-2)