One solution is to limit the amount of characters, but this isn't always very consistent with the varying sizes of words - you can end up with more or less space available than desired. I decided I wanted to limit the amount of lines, and was able to achieve this with just CSS:
.box {
width: 50px;
height: 50px;
}
.box span {
display: block;
font-size: 10px;
line-height: 14px;
height: 42px;
overflow: hidden;
}
<div class="box">
<span>Lorem ipsum dolor sit amet, consectetur adipisicing elit, sed do eiusmod tempor.</span>
</div>
The line-height here is important, and then setting the height to 42px limits our text to 3 lines (14 x 3 = 42). A "read more" link can then be added after the span, if desired.