首页 文章 精选 留言 我的

精选列表

搜索[响应],共10000篇文章
优秀的个人博客,低调大师

使用响应式布局MediaQuery解决text组件在不同分辨率机型上文字显示不一致的问题

问题概述 text组件,设定宽度,文字铺满对应宽度,高分辨率机型加载文字压缩,联盟存在同样问题 复现步骤 1、加载demo 2、组件-->基础组件-->text组件 实际行为 1、低配机型加载正常 2、高分辨率机型加载文字压缩 验证 找了两台设备 ,其分辨率分别是2340 * 1080和2560 * 1600, 分别对一下样式进行验证 <textstyle="width:172px;">text-align:center</text>2340*1080 可以明显看到完整贴和边缘 抓取布局得到布局宽度是248 pixel 172 * (1080 / 750) = 247.68 四舍五入为248 2560 * 1600 可以看到布局不下了,被换行了 抓取布局得到布局宽度是367 pixel 172 * (1600 / 750) = 366.9 四舍五入为367 验证结果 在2560 * 1600的设备上完整布局这行文本需要175px; 在2340 * 1080的设备上完整布局这行文本需要172px; 分析 2560 * 1600 textsize = 64.0 2340 * 1080 textsize = 43.0 实际上是不同设备下的生效的textsize是不一样的,所以最终生成的布局宽度可能不是一个固定的宽度 解决 快应用提供了MediaQuery能力,可以用来适配不同分辨率的设备 在这里就可以使用mediaquery判断屏幕宽度的方式 例子 使用前 <template> <div> <text>text-align:left</text> </div> </template> <style> .text-test{ width:172px; }</style> 效果 使用后 <template> <div> <textclass="text-test">text-align:left</text> </div> </template> <style> @media(width>1080){ .text-test{ width:175px; } } .text-test{ width:172px; } </style> 效果 适配方案 首先找到不同分辨率的设备,使用ide的inspact功能获取到期望的宽度值 2560 \* 1600需要的宽度是175px;2340 * 1080需要的是172px; 使用mediaquery对不同设备进行区分 这里判断一下设备宽度 @media(width>1080){ .text-test{ width:175px; } } 原文链接:https://developer.huawei.com/consumer/cn/forum/topic/0204423007060260633?fid=18 原作者:Mayism

资源下载

更多资源
Mario

Mario

马里奥是站在游戏界顶峰的超人气多面角色。马里奥靠吃蘑菇成长,特征是大鼻子、头戴帽子、身穿背带裤,还留着胡子。与他的双胞胎兄弟路易基一起,长年担任任天堂的招牌角色。

Oracle

Oracle

Oracle Database,又名Oracle RDBMS,或简称Oracle。是甲骨文公司的一款关系数据库管理系统。它是在数据库领域一直处于领先地位的产品。可以说Oracle数据库系统是目前世界上流行的关系数据库管理系统,系统可移植性好、使用方便、功能强,适用于各类大、中、小、微机环境。它是一种高效率、可靠性好的、适应高吞吐量的数据库方案。

Eclipse

Eclipse

Eclipse 是一个开放源代码的、基于Java的可扩展开发平台。就其本身而言,它只是一个框架和一组服务,用于通过插件组件构建开发环境。幸运的是,Eclipse 附带了一个标准的插件集,包括Java开发工具(Java Development Kit,JDK)。

Sublime Text

Sublime Text

Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。