Как вставить пробел в предложении, если он проходит по экрану? - PullRequest
0 голосов
/ 24 августа 2009

У меня есть пользовательский элемент управления в моем веб-проекте asp.net.

Отображает заголовок поста в блоге. Если заголовок слишком длинный, он растянет свернутую таблицу и испортит макет страницы.

Можно ли обрезать текст после 40 символов, если в тексте нет пробела?

Как бы я проверил наличие пробела в любом месте и, если он не существует, вставить пробел.

Я ищу «лучшую практику», так как уверен, что это распространенная проблема для веб-приложений.

Ответы [ 4 ]

2 голосов
/ 24 августа 2009

Лучшей практикой в ​​этом случае будет повторное посещение вашего макета страницы.

Похоже, вы разработали что-то слишком гибкое для Интернета. У пользователя всегда есть возможность изменить размер браузера ... и это определенно может нарушить ваш макет, как вы его здесь опишите.

Форсировать их руку - плохой пользовательский опыт.

Создание чего-то гибкого, который ведет себя изящно, независимо от длины - лучший вариант ...

0 голосов
/ 24 августа 2009

TextFormatFlags может помочь вам. Возможно, вы захотите сделать что-нибудь с WordEllipses или WordBreak.

0 голосов
/ 24 августа 2009

Для этой цели был разработан тег <wbr/>. Есть также некоторые другие объекты HTML, которые могут помочь с этим. По сути, он предлагает браузеру, что это было бы хорошим местом, чтобы прервать, если строка становится слишком длинной.

Вы можете прочитать больше здесь:

http://www.quirksmode.org/oddsandends/wbr.html

0 голосов
/ 24 августа 2009

Если я не слишком упрощаю проблему:

overflow: hidden;

должен сделать трюк.

...