Javascript 查找使内部文本不被包装的div宽度
我用一些javascript构建了一个CRM来根据用户的需要调整列宽,但是我希望有一个按钮来自动调整所有列的宽度。 其思想是检查每个div以验证文本是否被包装,如果是,则增加div宽度(在给定的限制内)或在相反的情况下减少。诸如此类:Javascript 查找使内部文本不被包装的div宽度,javascript,Javascript,我用一些javascript构建了一个CRM来根据用户的需要调整列宽,但是我希望有一个按钮来自动调整所有列的宽度。 其思想是检查每个div以验证文本是否被包装,如果是,则增加div宽度(在给定的限制内)或在相反的情况下减少。诸如此类: while(div.contentTextWrapped && parseInt(div.style.width)>50) { div.style.width=parseInt(div.style.width)-5+"px
while(div.contentTextWrapped && parseInt(div.style.width)>50)
{
div.style.width=parseInt(div.style.width)-5+"px";
}
while(div.contentTextWrapped && parseInt(div.style.width)<500)
{
div.style.width=parseInt(div.style.width)+5+"px";
}
while(div.contentTextWrapped&&parseInt(div.style.width)>50)
{
div.style.width=parseInt(div.style.width)-5+“px”;
}
while(div.contentTextWrapped&&parseInt(div.style.width)您可以尝试查找一个字符的宽度。然后获取div的整个文本并计算div的总大小:
const singleCharWidth=3;//在px中
const textLength=div.textContent.length;
div.style.width=`${textLength*singleCharWidth}px`;
如果您想了解有关计算文本宽度的更多信息,可以在此处了解更多信息:您可以尝试查找一个字符的宽度。然后获取div的整个文本并计算div的总大小:
const singleCharWidth=3;//在px中
const textLength=div.textContent.length;
div.style.width=`${textLength*singleCharWidth}px`;
如果你想阅读更多关于计算文本宽度的内容,你可以在这里阅读更多内容:我认为你必须计算行数,然后调整对象的宽度。有很多方法可以做到这一点,这里有一种方法:
函数findWidth(obj、minW、maxW){
let line,ref,lineHeight,wdt,dif=10,done=false;
//从myDummy获取行高度
ref=document.getElementById('myDummy')
线高=参考偏视;
如果(线宽==0)返回
//指定要启动的最小宽度
wdt=最小值;
对象样式宽度=wdt+'px';
线=数学圆(目标偏视/线高);
而(行数>1){
//获取当前宽度并增加或指定最大/最小值并退出
wdt=parseInt(对象样式宽度);
如果(wdt+dif>maxW){
wdt=maxW;
完成=正确;
}否则如果(wdt我认为你必须计算行数,然后调整对象的宽度。有很多方法可以做到这一点,这里有一种方法:
函数findWidth(obj、minW、maxW){
let line,ref,lineHeight,wdt,dif=10,done=false;
//从myDummy获取行高度
ref=document.getElementById('myDummy')
线高=参考偏视;
如果(线宽==0)返回
//指定要启动的最小宽度
wdt=最小值;
对象样式宽度=wdt+'px';
线=数学圆(目标偏视/线高);
而(行数>1){
//获取当前宽度并增加或指定最大/最小值并退出
wdt=parseInt(对象样式宽度);
如果(wdt+dif>maxW){
wdt=maxW;
完成=正确;
}else if(WDTW)为什么不使用css flex呢?为什么不使用css flex呢?