CSS позиция относительно верхней части 50% div не работает - PullRequest
0 голосов
/ 21 марта 2019

У меня проблема с позиционированием:

enter image description here

Я не могу точно установить top: 50% и left: 50% для фотографий и текста, потому что это не 50%.Я пытаюсь вручную установить эти 50%, что больше похоже на 46%.

Когда я изменяю размер окна, текст перемещается.Я не знаю, что делать, и я ищу ответ в течение 2 часов

.photo-box {
  background: linear-gradient(250deg, rgba(251, 10, 237, 0.84), rgba(0, 186, 255, 0.91) 50%, rgba(15, 226, 98, 1));
  width: 100vw;
  text-align: center;
  font-size: 30px;
  padding-top: 70px;
  padding-bottom: 70px;
  margin-left: auto;
  margin-right: auto;
  color: #f0eeee;
  font-family: sans-serif;
  position: relative;
}

.tytul {
  display: flex;
  text-align: center;
  position: absolute;
  top: 46%;
  left: 45.3%;
}

.zdj-pierw img {
  border-radius: 100px;
  align-items: center;
  justify-content: center;
}
<div class="photo-box" style="">

  <div class="tytul">Strona WWW </div>
  <div class="zdj-pierw">
    <img src="https://picsum.photos/200/200/?random" width="200" height="200" />

  </div>


</div>

1 Ответ

0 голосов
/ 21 марта 2019

Вы должны использовать flex свойства для родителя, а не только для элемента, который вы хотите разместить.

Я также изменил border-radius на 50%, так как это идеальный раунд, независимо от размера изображения.

.photo-box {
  background: linear-gradient(250deg, rgba(251, 10, 237, 0.84), rgba(0, 186, 255, 0.91) 50%, rgba(15, 226, 98, 1));
  width: 100vw;
  font-size: 30px;
  padding-top: 70px;
  padding-bottom: 70px;
  color: #f0eeee;
  font-family: sans-serif;
  position: relative;
  
  display: flex;
  justify-content: center;
  align-items: center;
}

.tytul {
  position: absolute;
}

.zdj-pierw img {
  border-radius: 50%;
}
<div class="photo-box" style="">
  <div class="tytul">Strona WWW </div>
  <div class="zdj-pierw">
    <img src="https://picsum.photos/200/200/?random" width="200" height="200" />
  </div>
</div>
...