javascript实现限定高度下文字随不同设备自适应改变字体大小至字数完全展示

Posted Apple

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了javascript实现限定高度下文字随不同设备自适应改变字体大小至字数完全展示相关的知识,希望对你有一定的参考价值。

function fontAutoMoreLine() {
let textBox = document.getElementById("iconTxt");
let maxHeight = textBox.offsetHeight;
let title = document.getElementById("iconTitle");
let size = 5;
title.style.fontSize = size + \'vw\';
let scrollHeight=title. scrollHeight;
while (title.scrollHeight > maxHeight) {
scrollHeight=title. scrollHeight;
//当容器高度大于最大高度的时候,上一个尝试的值就是最佳大小。
size = size - 0.2;
title.style.fontSize = size + \'vw\';
if(scrollHeight<=title.scrollHeight){
$("#iconTitle").addClass("lineClamp");
break;
}
}
}
fontAutoMoreLine();
 
<div class="iconTxt" id="iconTxt">
          <div class="iconTitle" id="iconTitle">
                   哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈哈
          </div>
</div>
.iconTitle{font-weight:700;font-size:6vw;line-height: 8vw;}
.iconTxt{height:16vw;overflow: hidden;}
.lineClamp {
overflow: hidden !important;
text-overflow: ellipsis !important;
-webkit-line-clamp: 2;
display: -webkit-box;
-webkit-box-orient: vertical;
white-space: normal;
}

效果如图:

 

单行文字自适应实现看这里

 

以上是关于javascript实现限定高度下文字随不同设备自适应改变字体大小至字数完全展示的主要内容,如果未能解决你的问题,请参考以下文章

Flutter自定义Widget—随滑动改变高度的PageView

Flutter自定义Widget—随滑动改变高度的PageView

外层div随内层div高度自适应

css设置div高度,但div的高度无法自适应内容

DIV+CSS布局,怎么实现两列高度会一致,其中左例随内容长度而定。

实现不同分辨率下高度自适应