Чтобы обрезать текст необходимо воспользоваться комбинацией из трех свойств:
white-space: nowrap;
text-overflow: ellipsis;
overflow: hidden;
Но данный способ обрезает текст только на первой строке, для обрезки в любой необходимой строке воспользуемся следующими свойствами:
display: -webkit-box;
-webkit-line-clamp: 3;
-webkit-box-orient: vertical;
overflow: hidden;
Как видно из примера, если у блока с текстом есть внутренний отступ, то текст после многоточия не скрывается. Данную проблему придется убирать путем добавления дополнительной обертки с отступами.