css 根据屏幕宽度显示不同的内容

ev7lccsx  于 2023-01-06  发布在  其他
关注(0)|答案(2)|浏览(187)

对于一个元素,我有两个基于屏幕宽度的不同文本,当屏幕宽度小于或等于400px时,我想显示narrow,当屏幕宽度大于400px时,我想显示large
下面是代码:https://jsbin.com/qagetoseva/edit?html,css,output
但问题是,当宽度为400px时,这段代码什么也没显示,有人知道如何修改吗?

<!DOCTYPE html>
<html>
<head>
    <script src="https://code.jquery.com/jquery.min.js"></script>
    <script src="https://ajax.googleapis.com/ajax/libs/angularjs/1.6.4/angular.min.js"></script>
    <style>
        .me {
          height: 100vh;
        }
    </style>
</head>
<body>
  <div class="hide-if-large">narrow</div>
  <div class="hide-if-narrow">large</div>
</body>
</html>
@media screen and (min-width: 400px) {
    .hide-if-large {
        display:none
    }    
}

@media screen and (max-width: 400px) {
    .hide-if-narrow {
        display: none;
    }
}
46qrfjad

46qrfjad1#

亲爱的朋友,您的css媒体查询有问题。

@media screen and (max-width: 400px) {
.hide-if-large {
    display:none
}

}

@media screen and (max-width: 1024px) {
    .hide-if-narrow {
        display: none;
    }
}

我将第二个媒体查询更改为1024px,以适应平板电脑的大小。您应该为更大的屏幕(如最小宽度1025px)创建新的媒体查询

l3zydbqr

l3zydbqr2#

您使用最小宽度和最大宽度媒体查询相同的像素大小,这将混淆css。而宽度〈=400,您可以使用以下媒体查询:

@media screen and (max-width: 400px) {
.hide-if-large {
    display:none
}

对于宽度〉400的设备,您可以使用:

@media screen and (min-width: 401px) {
    .hide-if-narrow {
        display: none;
    }
}

在第二个介质查询中,您可以使用大于400的任何值。例如,420,500等。

相关问题