所以我制作自助卡(带图像,标题,描述,链接等)。描述的长度各不相同,从50-250个字符,我希望它适合固定的宽度和高度。所以我在考虑获取描述的长度并将其弹出到if语句中以更改字体大小。
但是将字体大小只是应用于超过一定长度的描述,是我遇到麻烦的地方。
这是在函数中形成HTML的地方:
card.innerHTML = "<div class='card'><img class='card-img-top' src='" + imgAddress + "' alt='Image'><div class='card-block'><h4 class='card-title'>" + title + "</h4><span class='desc'>" + desc + "</span><a href='" + linkAddress + "' download><button class='btn btn-primary'>View on our website</button></a>"+ addSpreadsheet + "</div><div class='card-footer'>Expires: "+ endDate + "</div></div>";
有点乱,基本上我们只需要这一行
<span class='desc'>" + desc + "</span>
有什么办法可以为特定的跨度添加ID或类吗?如果我改变整张卡片的字体大小,我可以使它工作,但那显然不会起作用。
如果您需要更多信息或代码,请与我们联系。但我认为这看起来已经足够了。
答案 0 :(得分:1)
我为你写了一个例子
HTML:
<!--This p Tag contain 245 chars , We are going to limit it using javascript-->
<p id="desc">
Lorem ipsum dolor sit amet, consectetur adipisicing elit. Qui consequatur magnam facilis quas dignissimos voluptate tempore, reiciendis quidem quam fuga asperiores, blanditiis inventore modi assumenda maiores mollitia alias perferendis fugiat.
</p>
java脚本:
var e = document.getElementById('desc').innerHTML;
console.log(e.length); //245
var newDesc ="";
for(var i=0; i<=e.length-1; i++){
if(i<100) //Limit it to what ever you want, I limit it to 100
newDesc += e[i];
else
break;
}
console.log(newDesc.length);// 100
document.getElementById('desc').innerHTML= newDesc;