Как можно обернуть текст, например aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, который превышает ширину a div (скажем 200px)?
Я открыт для любого решения, такого как CSS, jQuery и т.д.
Как можно обернуть текст, например aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa, который превышает ширину a div (скажем 200px)?
Я открыт для любого решения, такого как CSS, jQuery и т.д.
Попробуйте следующее:
div {
    width: 200px;
    word-wrap: break-word;
}
Вы можете использовать мягкий дефис, например:
 aaaaaaaaaaaaaaa­aaaaaaaaaaaaaaa
Это будет отображаться как
aaaaaaaaaaaaaaa-
aaaaaaaaaaaaaaa
если поле ввода недостаточно велико или как
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
если он есть.
В bootstrap 3 убедитесь, что пустое пространство не установлено как 'nowrap'.
div {
  width: 200px;
  word-break: break-all;
  white-space: normal;
}
   div {
    // set a width
    word-wrap: break-word
}
Решение "word-wrap" работает только в IE и браузерах, поддерживающих CSS3.
Лучшим решением для кросс-браузера является использование вашего языка на стороне сервера (php или что-то еще) для поиска длинных строк и регулярного размещения внутри них html-объекта ​
Этот объект прекрасно разбирает длинные слова и работает во всех браузерах.
например.
aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa​aaaaaaaaaaaaaaaaaaaaaaaaaaaaa
Единственный, который работает в IE, Firefox, chrome, safari и opera, если в слове нет пробелов (например, длинный URL-адрес):
div{
    width: 200px;  
    word-break: break-all;
}
Я нашел это пуленепробиваемым.
Другой вариант также использует:
div
{
   white-space: pre-line;
}
Это установит все ваши элементы div во всех браузерах, поддерживающих CSS1 (что почти во всех распространенных браузерах еще в IE 8)
Это сработало для меня
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;
Добавьте этот 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" 
.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+ */
}
Попробуйте это
div{
  display: block;
  display: -webkit-box;
  height: 20px;
  margin: 3px auto;
  font-size: 14px;
  line-height: 1.4;
  -webkit-line-clamp: 1;
  -webkit-box-orient: vertical;
  overflow: hidden;
  text-overflow: ellipsis;
}Пример из CSS-трюки:
div {
    -ms-word-break: break-all;
    /* Be VERY careful with this, breaks normal words wh_erever */
    word-break: break-all;
    /* Non standard for webkit */
    word-break: break-word;
    -webkit-hyphens: auto;
    -moz-hyphens: auto;
    hyphens: auto;
}
Дополнительные примеры здесь.
В теге HTML попробуйте:
<table>
    <tr>
        <td>
            <div style="word-wrap: break-word; width: 800px">
                Hello world, how are you? More text here to see if it wraps after a long while of writing and it does on Firefox but I have not tested it on Chrome yet. It also works wonders if you have a medium to long paragraph. Just avoid writing in the CSS file that the words have to break-all, that a small tip.
            </div>
        </td>
    </tr>
</table>
В теге CSS попробуйте:
background-size: auto;
table-layout: fixed;
Используйте атрибут word-wrap:break-word вместе с требуемой шириной. В основном, положить
 ширина в пикселях, а не в процентах.
width: 200px;
word-wrap: break-word;
Для меня работает серверное решение: $message = wordwrap($message, 50, "<br>", true); где $message - строковая переменная, содержащая слово/символы, которые нужно разбить. 50 - максимальная длина любого заданного сегмента, а "<br>" - текст, который вы хотите вставить каждый (50) символов.