html - 响应式设计的@media 查询(手机/平板电脑/桌面)

标签 html css

以上是我的问题的 CSS。
我的 CSS 是否不正确以针对每个屏幕尺寸只显示一个类?

我已经为此做了一百万种不同的变体(当然,这是夸张的),但我总是以略有不同但不正确的结果结束。

这次我最终显示了所有 3 个类,直到屏幕达到 480 像素。
然后只显示了我的 .desktop 类。

    /*Desktop Query*/
    @media only screen and (min-width: 768px) {
        .desktop {
            display: none;
        }
        .mobile, .tablet {
            display: block;
        }
    }

    /*Mobile Query*/
    @media only screen and (max-width: 480px) {
        .mobile {
            display: none;
        }
        .desktop, .tablet {
            display: block;
        }
    }

    /*Tablet Query*/
    @media only screen and (min-width: 481px) and (max-width: 768px) {
        .tablet {
            display: none;
        }
        .mobile, .desktop {
            display: block;
        }
    }

这是我的 HTML:

    <div class="mobile">
        <main>
            <h2> </h2>
            <p> </p>
        </main>
    </div>

最佳答案

您的代码无法正确显示的问题在于,您确实将显示内容 100% 错误地反转了:

    /**Desktop Query*/
    @media only screen and (min-width: 768px) {
      .desktop {
        display: block;
      }
      .mobile, .tablet {
        display: none;
      }
    }

    /*Tablet Query*/
    @media only screen and (min-width: 481px) and (max-width: 768px) {
      .tablet {
        display: block;
      }
      .mobile, .desktop {
        display: none;
      }
    }
    
    /*Mobile Query*/
    @media only screen and (max-width: 480px) {
      .mobile {
        display: block;
      }
      .desktop, .tablet {
        display: none;
      }
    }

请注意,我还将平板电脑查询移到了移动查询之上,因为媒体查询将从上到下顺序执行,这可以解释为什么您之前会得到奇怪的结果。

希望对您有所帮助! :)

关于html - 响应式设计的@media 查询(手机/平板电脑/桌面),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42616752/

相关文章:

html - 如何获得溢出:auto behavior with HTML table

CSS 构建模板

javascript - 使用 Spotify API 将我当前在 Spotify 中收听的歌曲添加到网站?

html - 由于 CSS,订购的罗马数字不起作用

javascript - 强制页面预加载器出现在任何内容之前

javascript - 不同div之间的平滑切换(jQuery)

html - Bootstrap : how to disable vertical scrollbar?

css - Facebook Comment Box 不会扩展其容器 div

样式第一个列表项的 CSS 规则

javascript - 如何正确编写媒体查询以在 IE 中使用一个样式表而在所有其他浏览器中使用另一个样式表?