2017-02-27 177 views
-4

我想知道如何才能为接受可变文本的固定宽度div设置最小和最大字体大小。我看了一个类似的question,但它没有提供一个简单的Javascript方法。为接受可变文本的固定宽度文本div设置最小和最大字体大小

如果文字很短,字体大小将是12px,如果是多行,则可以降低到最小8px。我将如何能够在普通的JavaScript中完成此操作?

谢谢!

+0

*' “我能”'* ..你的意思是*我们*;)请出示你有什么到目前为止已经试过。 StackOverflow不是一个免费的编码服务 - 你也不能期望含有计算每个字符大小的模糊答案 - 事先你可以做一些研究。 –

+0

获取字符串的长度并相应地更改div的类以匹配您针对不同字体大小的c​​ss样式https://www.w3schools.com/jsref/jsref_length_string.asp http://stackoverflow.com/questions/195951/change-an-elements-class-with-javascript –

回答

1

添加一个事件监听器到一些改变的属性,然后相应地改变字体大小。

document.getElementById("testInput").addEventListener("keyup", function(){ 
 
var inputText = document.getElementById("testInput").value; document.getElementById("test").innerHTML = inputText; 
 
if(inputText.length > 10){ 
 
    document.getElementById("test").style.fontSize = "8px"; 
 
}else if(inputText.length > 5){ 
 
    document.getElementById("test").style.fontSize = "10px"; 
 
}else{ 
 
    document.getElementById("test").style.fontSize = "12px"; 
 
} 
 
});
<input id="testInput"> 
 
<div id="test"></div>

+0

非常感谢@Pankaj!这非常有帮助。 @Roko:我并不是要求在这个银盘上出现解决方案,而是在寻求关于如何完成我的目标的任何提示。 – user2163224

相关问题