博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
JavaScript自适应调整文字大小
阅读量:6379 次
发布时间:2019-06-23

本文共 969 字,大约阅读时间需要 3 分钟。

JavaScript自适应调整文字大小

今天有个任务,发现页面上的数字由于太长而与其他数字重叠了。这个数字还不能像文字那样只显示一部分,必须全部显示。想了一些办法都不行,最后把超过1000变成1K,大于K改成M,这样办法都行,还是长呀。

注意:我这个任务不是在不同屏幕下文字大小调整,而是同一种屏幕下调整字体大小。

在网上还找到了一种方法,但是没有使用。

同时又去试了一下svg是否可以自动调整文字大小,发现不行(可能是我没搞清楚,如果把SVG当成一个图片可能好使)。

最后想了一个办法,根据数字的长度动态修改文字的大小。系统使用AngularJS写的。所以在controller.js中设定了一个$scope.myStyle的样式,并且把样式放在div上:

...

然后在controller.js中判断字符串长度。首先先把数字变成字符串并且都连接在一起,然后判断最终的字符串长度。

示例:

if(text_length <= 6) {    $scope.myStyle = {       "font-size": "34px",    }} else if(text_length <= 8) {    $scope.myStyle = {       "font-size": "32px",    }} else if(text_length <= 10) {    $scope.myStyle = {       "font-size": "30px",    }} else if(text_length <= 12) {    $scope.myStyle = {       "font-size": "26px",    }} else if(text_length < 18) {    $scope.myStyle = {       "font-size": "22px",    }} else {    $scope.myStyle = {       "font-size": "20px",    }}

最后的显示效果还可以,不过调试的过程要自己慢慢调。:D

@完

转载于:https://www.cnblogs.com/zhangqunshi/p/6679860.html

你可能感兴趣的文章
P1739 表达式括号匹配
查看>>
3.1.4 模板字符串
查看>>
Qt 3D教程(二)初步显示3D的内容
查看>>
100行代码实现最简单的基于FFMPEG+SDL的视频播放器(SDL1.x)【转】
查看>>
compareTo返回值为-1 、 1 、 0 的排序问题
查看>>
Being a Good Boy in Spring Festival(杭电1850)(尼姆博弈)
查看>>
互联网+时代IT管理者的转型
查看>>
Linux系统调用--getrlimit()与setrlimit()函数详解【转】
查看>>
限制容器的 Block IO - 每天5分钟玩转 Docker 容器技术(29)
查看>>
cocos2dx下的A星算法
查看>>
RabbitMQ的应用场景以及基本原理介绍(转)
查看>>
Nginx:413 Request Entity Too Large解决
查看>>
飘雪代码2枚
查看>>
项目微管理3 - 面试
查看>>
友元函数和友元类
查看>>
SpringMVC中CRUD实例
查看>>
java-jmx使用
查看>>
Win8Metro(C#)数字图像处理--2.15图像霓虹效果
查看>>
Expo大作战(十七)--expo结合哨兵(sentry)进行错误异常记录
查看>>
vue.js入门学习
查看>>