Как я могу обернуть или сломать длинный текст / слово в фиксированном диапазоне ширины?
Я хочу создать пролет с фиксированной шириной, что при вводе любой вещи в пролет, как <span>lgasdfjksdajgdsglkgsadfasdfadfasdfadsfasdfasddkgjk</span>
, длинная строка текста без интервалов, слово(ы) разрыв или перенос на следующую строку.
какие идеи?
7 ответов:
вы можете использовать свойство CSS
word-wrap:break-word;
, который будет ломать слова, если они слишком длинны для вашей ширины пролета.span { display:block; width:150px; word-wrap:break-word; }
<span>VeryLongLongLongLongLongLongLongLongLongLongLongLongExample</span>
попробуйте следующий css:
span { display: block; word-wrap:break-word; width: 50px; white-space: normal }
по умолчанию a
span
этоinline
элемент... так что это не поведение по умолчанию.можно сделать
span
ведите себя таким образом, добавляяdisplay: block;
для вашего CSS.span { display: block; width: 100px; }
просто расширить практический охват вопроса и в качестве приложения к данным ответам: Иногда может оказаться необходимым указать селекторы немного больше.
определив полный диапазон, как дисплей:инлайн-блок вы можете иметь трудное время показа изображений.
поэтому я предпочитаю определять промежуток следующим образом:
span { display:block; width:150px; word-wrap:break-word; } p span, a span, h1 span, h2 span, h3 span, h4 span, h5 span { display:inline-block; } img{ display:block; }