如何在Javascript中为某些标签添加样式(font-size)

时间:2017-06-16 02:59:27

标签: javascript html css

所以我制作自助卡(带图像,标题,描述,链接等)。描述的长度各不相同,从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或类吗?如果我改变整张卡片的字体大小,我可以使它工作,但那显然不会起作用。

如果您需要更多信息或代码,请与我们联系。但我认为这看起来已经足够了。

1 个答案:

答案 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;

https://jsfiddle.net/emilvr/t2ekv8w7/