Как сделать так, чтобы загрузочная карта всегда имела одинаковые размеры

Я делаю очень простой проект, чтобы изучить вызовы API на Angular, который отлично работает. Моя проблема связана с дизайном HTML. Я использую bootstrap 5, чтобы сделать дизайн немного дружественным, но, поскольку я мало работал с этой библиотекой, мне все еще трудно правильно использовать ее классы. Мой макет состоит из одной карточки, где я печатаю некоторый текст, который я получаю от вызова API, и кнопку для печати другой шутки. Очень просто. Я уже установил максимальную высоту для карты, и она работает нормально, но моя проблема связана с элементами внутри нее. Строка, которую я печатаю, может иметь разную длину, поэтому она будет перемещать кнопку под ней, что, как мне кажется, не самое лучшее для UI/UX.

Я предоставляю код:

HTML

<div class = "container justify-content-center align-items-center mt-5">
  <div class = "row">
    <div class = "card justify-content-center align-items-center">
      <h1 class = "m-3">{{ actualJoke }}</h1>
      <button class = "btn btn-outline-primary btn-lg m-5 px-5" (click) = "getJoke()">Next joke ⏩</button>
    </div>
  </div>
</div>

CSS

.card {
    height: 40vh;
}

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

Вы можете использовать position: fixed.

Mike Poole 12.05.2022 12:02

@MikePoole Ха-ха, я собирался прокомментировать то же самое

Sumit Sharma 12.05.2022 12:04

Да, это не работает, это просто помещает кнопку посередине всего.

AhmedSHA256 12.05.2022 12:05

Основываясь на именах классов, я предполагаю, что карта имеет стиль «display: flex». Если это так, вы можете попробовать стилизовать кнопку с помощью «margin-top: auto !important» и посмотреть, что произойдет. Затем он должен прилипнуть к нижней части карты.

jna 12.05.2022 12:23
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
Улучшение производительности загрузки с помощью Google Tag Manager и атрибута Defer
В настоящее время производительность загрузки веб-сайта имеет решающее значение не только для удобства пользователей, но и для ранжирования в...
Введение в CSS
Введение в CSS
CSS является неотъемлемой частью трех основных составляющих front-end веб-разработки.
Как выровнять Div по центру?
Как выровнять Div по центру?
Чтобы выровнять элемент <div>по горизонтали и вертикали с помощью CSS, можно использовать комбинацию свойств и значений CSS. Вот несколько методов,...
Навигация по приложениям React: Исчерпывающее руководство по React Router
Навигация по приложениям React: Исчерпывающее руководство по React Router
React Router стала незаменимой библиотекой для создания одностраничных приложений с навигацией в React. В этой статье блога мы подробно рассмотрим...
Система управления парковками с использованием HTML, CSS и JavaScript
Система управления парковками с использованием HTML, CSS и JavaScript
Веб-сайт по управлению парковками был создан с использованием HTML, CSS и JavaScript. Это простой сайт, ничего вычурного. Основная цель -...
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Ангулярный шаблон для бронирования путешествий
Toor - Travel Booking Angular Template один из лучших Travel & Tour booking template in the world. 30+ валидированных HTML5 страниц, которые помогут...
0
4
30
2
Перейти к ответу Данный вопрос помечен как решенный

Ответы 2

Ответ принят как подходящий
<div class = "container">
    <div class = "row">
        <div class = "col">
            <div class = "card h-100">
                <div class = "card-body">
                    <h5 class = "card-title">Card title</h5>
                    <p class = "card-text">Some quick example text to build on the card title and make up the bulk of
                        the card's content.</p>
                </div>
            </div>
        </div>
        <div class = "col">
            <div class = "card h-100">
                <div class = "card-body">
                    <h5 class = "card-title">Card title</h5>
                    <p class = "card-text">Some quick example text to build on the card title and make up the bulk of
                        the card's content. Some more quick example text for the card's content.</p>
                </div>
            </div>
        </div>
        <div class = "col">
            <div class = "card h-100">
                <div class = "card-body">
                    <h5 class = "card-title">Card title</h5>
                    <p class = "card-text">Some quick example text to make up the bulk of the card's content.</p>
                </div>
            </div>
        </div>
    </div>
</div>

попробуйте этот код.

<div class = "container">
    <div class = "row">
        <div class = "col">
            <div class = "card h-100">
                <div class = "align-items-start card-body d-flex flex-column">
                    <h5 class = "card-title">Card title</h5>
                    <p class = "card-text">Lorem ipsum, dolor sit amet consectetur adipisicing elit. Cumque, pariatur!
                    </p>
                    <button class = "btn btn-outline-primary btn-lg m-5 px-5 mt-auto" (click) = "getJoke()">Next joke
                        ⏩</button>
                </div>
            </div>
        </div>
        <div class = "col">
            <div class = "card h-100">
                <div class = "align-items-start card-body d-flex flex-column">
                    <h5 class = "card-title">Card title</h5>
                    <p class = "card-text">Lorem ipsum dolor sit amet consectetur adipisicing elit. Animi a in
                        suscipit, aliquam magnam iure, hic earum autem quasi cum deserunt quidem eos quaerat
                        voluptatum.</p>
                    <button class = "btn btn-outline-primary btn-lg m-5 px-5 mt-auto" (click) = "getJoke()">Next joke
                        ⏩</button>
                </div>
            </div>
        </div>
        <div class = "col">
            <div class = "card h-100">
                <div class = "align-items-start card-body d-flex flex-column">
                    <h5 class = "card-title">Card title</h5>
                    <p class = "card-text">Lorem ipsum dolor sit amet consectetur adipisicing elit. Doloribus,
                        laudantium!</p>
                    <button class = "btn btn-outline-primary btn-lg m-5 px-5 mt-auto" (click) = "getJoke()">Next joke
                        ⏩</button>
                </div>
            </div>
        </div>
    </div>
</div>

если вы хотите, чтобы все кнопки имели одинаковые размеры, тогда этот код будет полезен, попробуйте это.

Другие вопросы по теме