2012-12-11 2 views
13

Есть ли свойство css, которое может выполнять одно из следующих действий? Но сначала позвольте мне объяснить.Как ограничить ограничение символа линией или # символов с помощью css?

Представьте себе макет, где каждый элемент имеет ширину: 200 пикселей; и каждая из них будет высотой: 250 пикселей; (это просто пример).

В каждом элементе есть миниатюра и ссылка, а часто время, эта ссылка обертывается на 2-3 строки и, следовательно, делает высоту каждого элемента разным.

Есть ли способ установить максимум # символов внутри класса или обрезать завершение после определенного количества строк? И, возможно, даже добавить эффект css для вставки контента: «...»; до конца строки, чтобы показать, что она была отрезана?

Любая помощь приветствуется.

спасибо.

+4

'текст переполнение: ellipsis', вероятно, closesest к тому, что вам нужно , Однако он не поддерживается в старых браузерах. – Christoph

+0

Ах идеальный, чувак. Спрятано с белым пространством, переполнением текста: эллипсисом и т. Д., И это дало мне именно то, что я хотел. Благодарю. – popsicle

+0

Хе-хе, я собирался создать для вас пример скрипки, затем я увидел ваш комментарий;) Вы можете принять мой ответ, если ваша проблема решена с этим. счастливое кодирование. ура – Christoph

ответ

25

Вы можете попробовать text-overflow, однако он имеет некоторые ограничения, но все еще может вам номер:

Example

<div id="container"> 
    This is some short content to demonstrate the css-property 
    text-overflow 
</div>​ 

#container{ 
    width:100px; 
    height:50px; 
    border:1px solid red; 
    overflow:hidden; 
    text-overflow:ellipsis; 
    white-space: nowrap; 
}​ 
9

Не символы, но вы можете установить ширину элемента в пикселях и использовать свойство text-overflow, которое должно добавить «...».

Кроме того, вы можете ограничить количество строк, установив высоту элемента, например, 30px и установив свойство CSS высотой 15px и добавив overflow:hidden. Таким образом, у вас будут точные две строки текста.

.twoLines{ 
    height:30px; 
    line-height:15px; 
    overflow:hidden; 
}