【问题标题】:CSS3 Media Query not affecting class widthCSS3媒体查询不影响类宽度
【发布时间】:2023-03-19 21:40:01
【问题描述】:

我正在使用 CSS 媒体查询来进行响应式网页设计。为了使它们井井有条且易于访问,我在 CSS 文档的顶部声明了所有媒体查询,如下所示:

* {margin:0 auto; padding: 0;}
body {margin: 0; padding: 0; font: normal 100% Helvetica, Arial, sans-serif; color: #FFF; background: url(../img/defaultNav.jpg); background-repeat: repeat-x;}
h1 {font-size: 5.75em; font-weight: 800; text-align: center}
h2 {font-size: 2.5em; font-weight: 300; text-align: center; line-height: 50px;}
h3 {font-size: 2.5em; font-weight: 100; line-height:50px; color: #666;}
h4 {font-size: 1.25em; font-weight: 100; color: #999; margin-top: 10px; margin-bottom:18px;}
p {font-size: 1em; color: #999;}
a {color: #999; text-decoration: none;}
a:hover {text-decoration: underline;}

@media screen and (min-width: 1700px) { 
                                        h1 {font-size: 6.2em;}
                                        h2 h3 {font-size: 3.5em;}
                                        h4 {font-size: 2.5em;}
                                        p {font-size: 2em;}
                                        /*.content {max-width: 80em;}*/
                                      }
@media screen and (max-width: 780px) {  /*.column {float: none; width: auto;}*/ }
@media screen and (min-width: 681px) {  .mobileBar, .nav {display: none;}   }
@media screen and (max-width: 680px) {  .header .title h1 {font-size: 2.5em;}   h2 {font-size: 1.5em;}  .headerSmall .title h1 {font-size: 2.5em;}  }
@media screen and (max-width: 500px) {  p {text-align: left;}   }
@media screen and (max-width: 320px) {
                                        * {text-align: left;}
                                        h1 { font-size: 2.5em;}
                                        h2 {font-size: 1.2em;}
                                        h3 {font-size: 1.6em; line-height: normal; text-align: center;}
                                        h4 {font-size: 1.4em; text-align: center;}
                                        .content .contentTitles img {display: none;}
                                     }

查询工作得很好,除了我在上面注释掉的两个。 (在前两个查询下)这两个查询仅在我将它们写在我试图影响的类下时才有效,即:

.content {
margin:auto;
padding:1em 2em;
max-width:35.75em;
height:inherit;
}
@media screen and (min-width: 1700px) {    .content {max-width: 80em;}    }

我不明白它为什么这样做。我曾尝试在堆栈上进行研究,只是一般的谷歌搜索,但我找不到任何结果。这真的很令人沮丧,因为我喜欢让我的代码井井有条。如果有人知道为什么会发生这种情况,我将不胜感激。我还在最新版本的 Safari 和 Firefox 以及 Safari iOS 上进行测试,如果这有什么不同的话。

【问题讨论】:

    标签: css media-queries


    【解决方案1】:

    好吧,.content 规则中的max-width: 35.75em覆盖媒体查询的规则。因为它来晚了。这就是级联的工作原理。

    您如何对媒体查询规则进行分组和排序完全取决于您,但它们不会比稍后出现的规则获得某种特殊优先级,并且可以像任何其他 CSS 规则一样被覆盖。

    您的浏览器的样式检查器将准确地向您显示正在应用和/或覆盖的样式。你知道怎么用吗?

    【讨论】:

    • 哦,有道理,我只是假设媒体查询会覆盖其他任何东西,就像它们有优先级一样。我知道 safari 的网络检查器,但我只是用谷歌搜索了一下,并不知道它有这么多功能。感谢您的帮助
    猜你喜欢
    • 1970-01-01
    • 2012-12-04
    • 2013-01-06
    • 1970-01-01
    • 2019-09-20
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2020-09-04
    相关资源
    最近更新 更多