Css 无法将div隐藏到视口之外

Css 无法将div隐藏到视口之外,css,media-queries,Css,Media Queries,当视口小于960px时,我想将绝对定位的div隐藏在视口之外。以下是具有隐藏规则的div和media查询的css: @media all and (max-width: 960px) { .newsbox{ right:-355px; } } .newsbox{ position:fixed; right:0; top:0; height:100%; background:#fff; z-index:900;

当视口小于960px时,我想将绝对定位的div隐藏在视口之外。以下是具有隐藏规则的div和media查询的css:

@media all and (max-width: 960px) {
    .newsbox{
        right:-355px;
    }

}  

.newsbox{
    position:fixed;
    right:0;
    top:0;
    height:100%;
    background:#fff;
    z-index:900;
    width:395px;
    overflow:hidden;
    background:#f7f7f7;
}

有谁能解释一下,当浏览器窗口不超过960px时,为什么这个规则不隐藏这个元素?提前谢谢

您的
@media
规则需要放在下面,否则级联将导致外部
.newsbox
规则始终优先,并覆盖内部
规则中的
样式,而不管您的媒体查询是否有效:

.newsbox {
    position: fixed;
    right: 0;
    top: 0;
    height: 100%;
    background: #fff;
    z-index: 900;
    width: 395px;
    overflow: hidden;
    background: #f7f7f7;
}

@media all and (max-width: 960px) {
    .newsbox {
        right: -355px;
    }
}

我认为这与媒体询问无关。。。但我知道这是相关的:)非常感谢你!