当前位置: 首页 > news >正文

aspect-ratio: 1 / 1样式在部分手机浏览器中失效的问题怎么解决?

最近在uniapp开发时又遇到了安卓手机不兼容问题,ios系统无影响。

开发背景:小编想通过网格布局来实现答题卡的布局,实现五列多行的形式。

代码片段:

<view class="question-grid"><viewv-for="(question, index) in questions":key="index"class="grid-item":class="{current: currentQuestionIndex === index,answered:question.type !== 2 &&question.userAnswer &&question.userAnswer === question.correctAnswer,wrong:question.type !== 2 &&question.userAnswer &&question.userAnswer !== question.correctAnswer,answered:question.type === 2 &&question.userAnswer &&question.userAnswer.length > 0 &&question.userAnswer === question.correctAnswer,wrong:question.type === 2 &&question.userAnswer &&question.userAnswer.length > 0 &&question.userAnswer !== question.correctAnswer,}"@click="jumpToQuestion(index)">{{ index + 1 }}</view></view>
.question-grid {display: grid;grid-template-columns: repeat(5, 1fr);gap: 12px;height: 500rpx;overflow-y: scroll;
}.grid-item {width: 100%;aspect-ratio: 1/1;display: flex;justify-content: center;align-items: center;border-radius: 10px;font-weight: 500;cursor: pointer;transition: all 0.3s ease;background: #f8f9fc;color: #555;
}

究其原因:原来安卓系统对于aspect-ratio的支持不一致,导致这个样式在安卓系统上生效。所以小编要换个样式来实现等比例缩放。可以使用padding-top替代aspect-ratio,并设置height: 0确保容器高度完全由padding控制,最终的样式代码如下:

.question-grid {display: grid;grid-template-columns: repeat(5, 1fr);gap: 12px;height: 500rpx;overflow-y: scroll;
}.grid-item {position: relative;width: 100%;height: 0;padding-top: 100%;justify-content: center;align-items: center;border-radius: 10px;font-weight: 500;cursor: pointer;transition: all 0.3s ease;background: #f8f9fc;color: #555;
}
/* 添加内部容器 */
.grid-item-content {position: absolute;top: 0;left: 0;width: 100%;height: 100%;display: flex;justify-content: center;align-items: center;
}

这样就成功解决了aspect-ratio: 1 / 1带来的兼容性问题啦

http://www.dtcms.com/a/282650.html

相关文章:

  • 《R for Data Science (2e)》免费中文翻译 (第0章) --- Introduction
  • CURRENT_TIMESTAMP和NOW函数使用
  • Spring Boot 集成 Redis 并调用 Lua 脚本详解
  • multiprocessing.Pool 中的 pickle 详解
  • 文献精读:气候变化、CO2浓度提高和土地利用变化对全球陆地蒸散发的影响分析
  • C++矿井逃生游戏深度解析:迷宫生成与灯光渲染技术 | EasyX实战
  • 45. 跳跃游戏 II
  • 3.1 认识函数
  • 工作第一步建立连接——ssh
  • [MySQL基础1]数据定义语言DDL与数据操作语言DML
  • Transform的重要方法
  • sktime - 时间序列机器学习统一接口
  • Docker——Redis
  • ollama快速部署使用(windows版)
  • Linux三剑客grep、sed、awk
  • 海盗王如何拍摄和打包小地图
  • 在javaScript里删除节点以及添加节点
  • livecharts 装版本8
  • 预训练模型:大规模数据预学习范式——定义、原理与演进逻辑
  • CSS隐藏元素:display:none vs visibility:hidden
  • S7-200 SMART PLC:模拟量模块接线全解析
  • 新手向:自动化图片格式转换工具
  • PyCharm高效入门指南大纲
  • 如何在 Linux 上下载和安装 Conda/Miniconda
  • 基于 Docker 环境的 JupyterHub 详细部署手册
  • VR 污水厂初体验:颠覆传统认知​
  • 广州 VR 森林防火系统功能探究​
  • Harmony-Next鸿蒙实战开发项目-仿小米商城App----V2
  • DOM 规范中的 MutationObserver 接口
  • 【LeetCode 热题 100】543. 二叉树的直径——DFS