Гибкое направление: столбец; работает по-разному в Chrome и Firefox

body {
  margin: 0;
  padding: 0;
}

.bigContainer {
  position: absolute;
  width: 100%;
  height: 100%;
  background-color: rgb(0, 255, 60);
}

.smallContainer {
  display: flex;
  flex-direction: column;
  position: absolute;
  width: 25%;
  height: 100%;
  background-color: rgb(255, 255, 255);
  align-items: center;
  right: 0;
}

.profile {
  display: flex;
  flex-direction: column;
  align-items: center;
  height: 45%;
}

.meow {
  font-size: larger;
  font-weight: bolder;
  padding: 10px 10px 0 10px;
}

.bio {
  /* margin-top: 2px; */
  font-weight: 700;
  /* margin-bottom: 2px; */
}

.foto {
  height: 100%;
  border-radius: 50%;
  background-color: aqua;
}

.details {
  width: 85%;
  text-align: justify;
}
<div class = "bigContainer">
<div class = "smallContainer">
    <div class = "profile">
        <img src = "https://robohash.org/test" class = "foto" />
        <span class = "meow">Meow Meow Meow</span>
        <p class = "bio">Meow Meow Meow Meow Meow Meow</p>
    </div>
    <div class = "details">
        <p>
            Lorem ipsum dolor sit amet consectetur adipisicing elit. Quibusdam,
            doloremque aperiam itaque officia error expedita cupiditate
            excepturi laboriosam labore veniam sit, minima ullam porro repellat
            ducimus possimus obcaecati tenetur voluptatem.
        </p>
    </div>
</div>
</div>

когда я открываю это в Firefox, все кажется нормально, работает нормально, но открывая это в Chrome или в Opera GX, div деталей перекрывается с div профиля, размер изображения отличается от размера Firefox. Я попытался установить верхний предел поля, чтобы разделить их, но в Firefox это выглядит странно со слишком большим пространством посередине. Я делаю что-то не так или это нужно обрабатывать по-разному в разных браузерах?

Я подозреваю, что виновата ширина .smallContainer...

Ortund 09.04.2024 08:48
Улучшение производительности загрузки с помощью 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
1
61
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Удаление position: absolute заставляет его работать правильно, а также, чтобы показать содержимое справа, я добавил justify-content: end в родительский контейнер.

Вот как это выглядит сейчас:

body {
  margin: 0;
  padding: 0;
  height: 100vh;
  background: red;
}

.bigContainer {
  display: flex;
  justify-content: end;
  align-items: center;
  width: 100%;
  height: 100%;
  background-color: rgb(0, 255, 60);
}

.smallContainer {
  flex-direction: column;
  width: 25%;
  height: 100%;
  background-color: rgb(255, 255, 255);
  align-items: center;
  right: 0;
  overflow-y: scroll;
}

.profile {
  display: flex;
  flex-direction: column;
  align-items: center;
}

.meow {
  font-size: larger;
  font-weight: bolder;
  padding: 10px;
}

.bio {
  font-weight: 700;
}

.foto {
  width: 100px;
  border-radius: 50%;
  background-color: aqua;
}

.details {
  width: 85%;
  text-align: justify;
}
<div class = "bigContainer">
  <div class = "smallContainer">
    <div class = "profile">
      <img src = "https://robohash.org/test" class = "foto" alt = "Profile Picture">
      <span class = "meow">Meow Meow Meow</span>
      <p class = "bio">Meow Meow Meow Meow Meow Meow</p>
    </div>
    <div class = "details">
      <p>
        Lorem ipsum dolor sit amet consectetur adipisicing elit. Quibusdam, doloremque aperiam itaque officia error expedita cupiditate exceptuofficialriosam labore veniam sit, minima ullam porro repellat ducimus possimus obcaecati tenetur voluptatem.
      </p>
    </div>
  </div>
</div>

Спасибо, это сработало, но почему в Chrome он ведет себя по-другому при использовании Absolute. Если вы можете, пожалуйста, объясните мне это

suyog 09.04.2024 09:09

Существует множество причин, почему абсолютная позиция действует таким образом по отношению к. браузер. И Chrome, и Firefox имеют разные свойства и компоненты стиля. Вы также можете заметить небольшую разницу в ширине полосы прокрутки, которая также может иметь значение.

Tanishq S 09.04.2024 09:23

это работает, но высота большого контейнера не равна полной высоте, когда установка высоты на 100% ничего не дает, а установка на 100vh дает ту же проблему

suyog 09.04.2024 09:32

попробуйте добавить height: 100%; к body.

Tanishq S 09.04.2024 09:37

я сделал, это тоже не сработало

suyog 09.04.2024 09:39

Я отредактировал свой ответ, проверьте, сработало ли это

Tanishq S 09.04.2024 09:41

детальный блок находится внизу

suyog 09.04.2024 09:44

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