Как обернуть текст в HTML? - PullRequest
172 голосов
/ 18 июля 2009

Как можно обернуть текст, такой как aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, который превышает ширину div (скажем, 200px)?

Я открыт для любого решения, такого как CSS, jQuery и т. Д.

Ответы [ 16 ]

222 голосов
/ 18 июля 2009

Попробуйте это:

div {
    width: 200px;
    word-wrap: break-word;
}
54 голосов
/ 12 ноября 2013

На начальной загрузке 3 убедитесь, что пустое пространство не установлено как nowrap.

div {
  width: 200px;
  word-break: break-all;
  white-space: normal;
}
51 голосов
/ 18 июля 2009

Вы можете использовать мягкий дефис, например, так:

aaaaaaaaaaaaaaa­aaaaaaaaaaaaaaa

Это будет выглядеть как

aaaaaaaaaaaaaaa-
aaaaaaaaaaaaaaa

, если вмещающий ящик недостаточно большой или как

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa

если это так.

28 голосов
/ 18 июля 2009
   div {
    // set a width
    word-wrap: break-word
}

Решение 'word-wrap' работает только в IE и браузерах, поддерживающих CSS3.

Лучшее кросс-браузерное решение - использовать язык на стороне сервера (php или любой другой) для поиска длинных строк и регулярного размещения внутри них html-сущности ​ Эта сущность прекрасно разбивает длинные слова и работает во всех браузерах.

, например

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa​aaaaaaaaaaaaaaaaaaaaaaaaaaaaa
8 голосов
/ 02 июня 2016

Это сработало для меня

word-wrap: normal;
word-break: break-all;
white-space: normal;
display: block;
height: auto;
margin: 3px auto;
line-height: 1.4;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
8 голосов
/ 12 апреля 2013

Единственное, что работает в IE, Firefox, Chrome, Safari и Opera, если в слове нет пробелов (например, длинный URL):

div{
    width: 200px;  
    word-break: break-all;
}

Я обнаружил, что это пуленепробиваемый.

6 голосов
/ 14 октября 2014

Другой вариант также использует:

div
{
   white-space: pre-line;
}

Это установит все ваши элементы div во всех браузерах, которые поддерживают CSS1 (что почти во всех распространенных браузерах начиная с IE 8)

3 голосов
/ 20 апреля 2015

Кросс-браузер

.wrap
{
    white-space: pre-wrap; /* css-3 */    
    white-space: -moz-pre-wrap; /* Mozilla, since 1999 */
    white-space: -pre-wrap; /* Opera 4-6 */    
    white-space: -o-pre-wrap; /* Opera 7 */    
    word-wrap: break-word; /* Internet Explorer 5.5+ */
}
2 голосов
/ 23 мая 2012

Добавьте этот CSS к абзацу.

style="width:420px; 
min-height:15px; 
height:auto!important; 
color:#666; padding: 1%; 
font-size: 14px; 
font-weight: normal;
word-wrap: break-word; 
text-align: left" 
0 голосов
/ 18 сентября 2018

Я использовал бутстрап. Мой HTML-код выглядит как ..

<div class="container mt-3" style="width: 100%;">
  <div class="row">
    <div class="col-sm-12 wrap-text">
      <h6>
        text content
      </h6>
    </div>
  </div>
</div>

CSS

.wrap-text {
     text-align:justify;
}
...