Linux中英文字显示不一样大,在IOS下,字体大小设置完全一致的文字,在显示上明显不同大小。有DEMO。...

在IOS的Safari中,多行字体大小设置完全一致的文字。在显示上,有浮动的元素内文字更小,普通的元素内文字更大。

只在IOS下出现,Android以及Chrome模拟下不会出现该问题

bVVjjp?w=719&h=1280

这些文字都是同样的font-size!!!

重现环境:

系统:IOS 10.3.3

浏览器:Safari, UC浏览器(IOS上QQ浏览器不会出现该问题)

出现条件:

将viewport设置为init-scale=0.5

详细描述:

由于想要解决移动端1px的问题,尝试设置了initial-scale=0.5。发现页面上所有字体都等比缩放了,唯一出现了一行文字比其他文字都要大。尝试输出了他们的getComputedStyle().fontSize都为24px,可显示上明显不同。

目前发现影响字体是否变大的因素:是否有子元素,是否浮动,是否换行,页面中是否有其他被放大的文字。(各种组合可以下载DEMO尝试)

DEMO

DEMO源码:

project

body { line-height: 1; }

.item { margin-bottom: 20px; font-size: 24px !important; float: left; }

.tips { clear: both; font-size: 24px !important; margin-top: 20px; }

span { color: red; }

A.左浮动的元素,我的字体更小
B.左浮动的元素,不存在span元素,文字需要换行,左浮动的元素,不存在span元素,文字需要换行
C.左浮动的元素, 有span元素,但是不用换行
D.左浮动的元素,如果我换行了,B也会变大,如果我不用换行,B就和AC一样大
E.普通元素, 有span,字体更大
F.普通元素,没span,如果页面里没有变大的文字,我的字体就更小
在 uni-app 中全局设置不同平台的大小,可以通过创建一个全局样式文件(例如 `global.scss` 或 `global.css`),并在其中定义不同平台的媒体查询(Media Queries),然后根据不同的平台条件应用不同的样式规则。 具体步骤如下: 1. 创建全局样式文件:在项目的 `static` 或 `assets` 目录下创建一个样式文件,比如命名为 `global.scss`。 2. 编写样式规则:在全局样式文件中,使用 CSS 的媒体查询来定义不同平台的大小。例如,可以为 Android 和 iOS 分别设置不同大小。可以使用 `@media` 规则来实现这一点。 ```scss @media all and (min-width: 320px) { .global-font-size { font-size: 14px; // 默认大小或其他平台的大小 } } @media screen and (min-width: 320px) and (-webkit-min-device-pixel-ratio: 2) { .global-font-size { font-size: 16px; // iOS设备的大小 } } @media screen and (min-width: 320px) and (min-device-pixel-ratio: 2) { .global-font-size { font-size: 16px; // Android设备的大小 } } ``` 3. 引入全局样式文件:在项目的 `App.vue` 文件或者 `main.js` 文件中,引入这个全局样式文件。例如,如果使用的是 `App.vue`,则在其中的 `<style>` 标签内引用该样式文件。 ```vue <style> @import url("./static/global.scss"); </style> ``` 4. 应用全局样式:在组件中使用全局定义的大小类。例如,在模板中使用 `.global-font-size` 类来应用全局定义的大小。 ```html <template> <view class="global-font-size">这是一段文本</view> </template> ``` 需要注意的是,上述代码仅为示例,实际使用时需要根据实际项目需求和设计规范调整选择器和大小值。另外,对于 H5 平台,可能还需要额外的媒体查询来覆盖不同设备和屏幕尺寸的设置。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值