Задать вопрос
JohnnyGat
@JohnnyGat
Стараюсь писать код, понятный человеку.

Почему не происходит перенос строки внутри контейнера?

Решил что Bootstrap со своими готовыми классами (в частности класс text-wrap) мне поможет, но нет.

Если внутри контейнера находится короткий текст, то ширина контейнера не ужимается мене чем 200 пикселей, это правильно:
<div class="row">
    <div class="col-auto">
        <div class="border border-black" style="min-width:200px;">
            <div class="row">
                <div class="col">Строка 1 - короткая</div>
            </div>
            <div class="row">
                <div class="col"><span class="text-wrap">Строка 2 - короткая</span></div>
            </div>
        </div>
    </div>
</div>


Если внутри контейнера находится длинный текст который не должен переноситься, то контейнер увеличивает свою ширину, это тоже правильно:
<div class="row">
    <div class="col-auto">
        <div class="border border-black" style="min-width:200px;">
            <div class="row">
                <div class="col">Строка 1 - длинная, div должен стать шире</div>
            </div>
            <div class="row">
                <div class="col"><span class="text-wrap">Строка 2 - короткая</span></div>
            </div>
        </div>
    </div>
</div>


Проблема в том что контейнер увеличивает свою ширину игнорируя класс "text-wrap". То есть вместо того чтобы остаться шириной 200 пикселей и переносить по словам длинную строку, контейнер не переносит строку, а увеличивает свою ширину:
<div class="row">
    <div class="col-auto">
        <div class="border border-black" style="min-width:200px;">
            <div class="row">
                <div class="col">Строка 1 - короткая</div>
            </div>
            <div class="row">
                <div class="col"><span class="text-wrap">Строка 2 - длинная, но div не должен стать шире, он должен остаться 200px</span></div>
            </div>
        </div>
    </div>
</div>


Вот полный код в "песочнице" tutorialspoint.com - tpcg.io/_J61SP0
Понадобится нажать кнопку "Preview" вверху слева

Подскажите, пожалуйста, как заставить контейнер переносить строку внутри, вместо того чтобы увеличиваться по ширине? Подойдет уже вариант и без использования Bootstrap.

PS №1:
Это не три разных контейнера. Это один контейнер и три примера его заполнения текстом. Контейнер может быть заполнен строками различной длины и мне нужно чтобы он корректно изменял свою ширину для любых вариантов.

PS №2:
1. Если внутри контейнера находится короткий текст, то ширина контейнера не должна быть более 200 пикселей
2. Если внутри контейнера находится длинный текст который не должен переноситься, то контейнер должен увеличить свою ширину
3. Если внутри контейнера находится длинный текст который должен переноситься, то ширина контейнера должна равняться ширине длинный текст который не должен переноситься, но не менее 200 пикселей. А длинный текст который должен переноситься - должен будет переносится на новые строки внутри этого контейнера.
  • Вопрос задан
  • 326 просмотров
Подписаться 1 Простой 15 комментариев
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы