Централизованное объединение двух изображений с помощью Bootstrap 5

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

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

В ручке ниже мне нужна фотография кофе, покрывающая весь элемент div, как если бы это было фоновое изображение; Подгонка объекта у меня просто не работает, и я не хочу никакого переполнения за пределами div. И логотип должен быть по центру внутри элемента div, накладывающего эту фотографию. Использование бутстрапа 5.

.wrapper {
  background: black;
}
.overlay {
  opacity: .5;
}
.logo {
 position: absolute;
 top: 0px;
 translate: -50%, -50%;
}
<link href = "https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel = "stylesheet"/>

<div class = "container">
  <div class = "row">
    <div class = "col-6 d-flex justify-content-center flex-column">
      <h3>Title here</h3>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc eu tortor eget sem elementum malesuada. Sed ac arcu nec magna facilisis aliquet. Sed ac pellentesque tortor. Quisque consequat dolor non iaculis molestie.</p>
    </div>
    <div class = "col-6 wrapper">
      <img src = "https://images.pexels.com/photos/302899/pexels-photo-302899.jpeg" width = "800px" height = "575px" class = "overlay object-fit-cover">
      <img src = "https://www.bluecapcoffee.com/wp-content/uploads/2023/06/Lavazza.png" class = "logo" width = "150px" height:"150px">
    </div>
  </div>
</div>

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

Meet 14.08.2024 09:46

Интересный. Я только что заказал 10 упаковок Lavazza 30 минут назад.

mplungjan 14.08.2024 09:48

Поиграйте с этим — codepen.io/qeeebmnq-the-looper/pen/dyBZqEM. Вашему div-оболочке нужна высота, поскольку оболочка является элементом, содержащим изображение. Canvas устанавливает для изображения bk полный фоновый элемент div.

ZADorkMan 14.08.2024 09:56

@ZADorkMan, в вашем коде есть несколько ошибок, поэтому он не работает. Кроме того, вы технически не правы. Вы не используете и не должны использовать «холст». Просто используйте background-size: cover, если хотите пойти по этому пути. Для правильной работы вам также необходимо удалить запятую из значений перевода. Обертке не нужна высота, поскольку ее высота задается через сетку Bootstrap (flexbox).

tacoshy 14.08.2024 10:02

Спасибо — да, я думаю, что скопировал неправильно codepen.io/qeeebmnq-the-looper/pen/dyBZqEM, но я думаю, что ваш ответ лучше. Я имел в виду «прикрытие», а не canvas, извините, еще рано.

ZADorkMan 14.08.2024 10:13
Улучшение производительности загрузки с помощью 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
5
51
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Просто следуйте Документации Bootstrap: позиция:

Контейнеру нужен класс: position-relative
Элементу логотипа нужны классы: position-absolute top-50 start-50 translate-middle

оверлей также должен предотвратить переполнение класса w-100 и позволить object-fit-cover работать.

.overlay {
  opacity: .5;
}
<link href = "https://cdn.jsdelivr.net/npm/[email protected]/dist/css/bootstrap.min.css" rel = "stylesheet"/>

<div class = "container">
  <div class = "row">
    <div class = "col-6 d-flex justify-content-center flex-column">
      <h3>Title here</h3>
      <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Nunc eu tortor eget sem elementum malesuada. Sed ac arcu nec magna facilisis aliquet. Sed ac pellentesque tortor. Quisque consequat dolor non iaculis molestie.</p>
    </div>
    <div class = "col-6 wrapper position-relative">
      <img src = "https://images.pexels.com/photos/302899/pexels-photo-302899.jpeg" class = "overlay object-fit-cover w-100">
      <img src = "https://www.bluecapcoffee.com/wp-content/uploads/2023/06/Lavazza.png" class = "logo position-absolute top-50 start-50 translate-middle" width = "150px" height:"150px">
    </div>
  </div>
</div>

Отлично, огромное спасибо. Мне не хватало применения w-100; Я читал, что для изображения требуется объявленное значение ширины, что я и сделал, но не знал, что в CSS требуется 100% ширина. еще раз спасибо

Dilby00 15.08.2024 13:24

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