我的媒体查询在开发中工作,但当我在生产中查看时,它不会响应字体大小的媒体查询.我正在查看iPhone 13上的产品版本,我怀疑这个问题可能只针对移动设备.我对这个项目使用了REACTION 18,并通过在Netlify上放置一个构建文件夹来手动部署.

我的HTML中有适当的meta标记,

<meta name="viewport" content="width=device-width, initial-scale=1" />

我在css中对我的媒体查询有适当的层次 struct ,

/* ////////////////// */
/* ! MEDIA QUERIES XS DEVICES */
/* ////////////////// */

@media (max-width: 380px) {
  .include span {
    word-spacing: 6px;
    font-size: 1.1rem;
  }

  .medium-contianer {
    font-size: 0.9rem;
  }
}
@media (max-width: 370px) {
  .medium-contianer,
  .strength,
  .bar-container {
    margin: 0 0.35rem;
    font-size: 0.85rem;
  }
}
@media (max-width: 330px) {
  .include span {
    word-spacing: 4px;
    font-size: 0.9rem;
  }
}

@media (max-width: 320px) {
  .medium-contianer,
  .strength,
  .bar-container {
    margin: 0 0.35rem;
    font-size: 0.75rem;
  }

  .include span {
    word-spacing: 4px;
    font-size: 0.8rem;
  }
}

@media (max-width: 300px) {
  .medium-contianer,
  .strength,
  .bar-container {
    margin: 0 0.1rem;
    font-size: 0.7rem;
  }

  .include span {
    word-spacing: 4px;
    font-size: 0.8rem;
  }
}

/* ////////////////// */
/* ! MEDIA QUERIES TABLET DEVICES */
/* ////////////////// */

@media (min-width: 550px) {
  .main-container {
    width: 80vw;
    margin: 2rem auto;
  }
}

/* ////////////////// */
/* ! MEDIA QUERIES DESKTOP DEVICES */
/* ////////////////// */

@media (min-width: 768px) {
  .medium-contianer,
  .strength,
  .include span {
    font-size: 1.35rem;
  }
}

@media (min-width: 900px) {
  .main-container {
    width: 50vw;
    margin: 2rem auto;
  }

  .strength-container {
    height: 2rem;
  }
}

@media (min-width: 1700px) {
  .main-container {
    width: 25vw;
    margin: 50rem auto;
    transform: scale(2);
  }
}

在所有Chrome Dev工具媒体显示中,它的格式完全按照我想要的方式进行.然而,当我在手机上查看制作版本时,没有一个媒体询问是完好无损的.

output on chrom dev tools

output on my mobile device

链接到我的回购 https://github.com/cassius2828/password-generator/tree/main/src

指向已部署应用程序的链接 https://password-generator-creynolds.netlify.app/

推荐答案

这里的问题不是你的媒体查询(它们工作得很好),而是一个跨浏览器的兼容性问题.我猜你有iPhone吧?不幸的是,浏览器并不都是一样的,甚至在两个不同的设备上使用相同的浏览器(例如iOS和Android).

以下是关于跨浏览器兼容性的一些细节以及它存在的原因:https://developer.mozilla.org/en-US/docs/Learn/Tools_and_testing/Cross_browser_testing/Introduction

在将代码部署到生产环境之前,您有什么方法可以在不同的设备上测试您的应用程序吗?如果是这样的话,我强烈建议您这样做,并相应地调整您的CSS值.

我现在给你的解决方案是,从降低.strong&;.bar-tainer的左右边距开始,看看它是否会给"非常强"的元素留出更多空间,这样它就可以保持在一行上.这将是一个开始!

就因为我在这里:你为你的班级写了‘Medium-contianer’而不是‘Medium-Container’:)

Css相关问答推荐

使用location:stickly将元素固定到其父容器的顶部

在主零部件悬停上对子零部件设置Angular 样式

设置ScaleImageButton的样式

如何使用CSS滚动驱动动画重复时间轴范围

使用 Vuetify 的 sass 变量时出错

为什么删除 AnimatePresence framer.div 时会出现轻微卡顿?

背景图像允许溢出输入按钮

更改 20 个实例中的一个组件的样式

我怎样才能让我所有的网格列的高度等于最短列的高度

使用 mixin 在 SCSS 中进行媒体查询

使用 css 网格和 nth-child 交替行

仅对父容器应用模糊效果

如何将 .btn-group 从 twitter-bootstrap 居中?

在 CSS 或 JavaScript 中反转图像的 colored颜色

如何保持标题静态,滚动时始终位于顶部?

内联