未应用媒体查询

Ved*_*yap 2 html css media-queries responsive-design

这是我的 CSS media query

@media screen and (max-width: 450px) {
    .box_url {
        font-size: 12pt;
    }
    .box_heading {
        font-size: 13pt;
    }
    .right {
    text-align: left;
    }
    .jane {
    font-size: 10pt;
    }
    .ninja {
    font-size: 12pt;
    }
}
Run Code Online (Sandbox Code Playgroud)

和我的普通 CSS

.right {
  text-align: right;
}
.jane {
  width: 100%;
  font-size: 70pt;
}
.ninja {
  width: 100%;
    font-size: 25pt;
}
Run Code Online (Sandbox Code Playgroud)

但是当我运行网站时,一些媒体查询没有被应用。

当我在 chrome 中打开开发工具时,它显示媒体查询被覆盖。

开发工具的截图

我也尝试使用,min-width但它仍然不适用这些样式。为什么会发生这种情况以及如何解决这个问题?

dip*_*pas 5

CSS 代表级联样式表,因此您必须将媒体查询放在标准 CSS 之后

像这样:

.right {
  text-align: right;
}
.jane {
  width: 100%;
  font-size: 70pt;
}
.ninja {
  width: 100%;
  font-size: 25pt;
}
@media screen and (max-width: 450px) {
  .box_url {
    font-size: 12pt;
  }
  .box_heading {
    font-size: 13pt;
  }
  .right {
    text-align: left;
  }
  .jane {
    font-size: 10pt;
  }
  .ninja {
    font-size: 12pt;
  }
}
Run Code Online (Sandbox Code Playgroud)

或者,如果您想将媒体查询放在首位,那么您需要在 CSS 选择器中更加具体。

像这样:

@media screen and (max-width: 450px) {
  .flex .box_url {
    font-size: 12pt;
  }
  .flex .box_heading {
    font-size: 13pt;
  }
  .flex .right {
    text-align: left;
  }
  .flex .jane {
    font-size: 10pt;
  }
  .flex .ninja {
    font-size: 12pt;
  }
}
.right {
  text-align: right;
}
.jane {
  width: 100%;
  font-size: 70pt;
}
.ninja {
  width: 100%;
  font-size: 25pt;
}
Run Code Online (Sandbox Code Playgroud)