Почему один блок сетки CSS ниже остальных?

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

Я попытался удалить поля и внимательно просмотрел структуру HTML, но не смог определить, что вызывает смещение этого конкретного поля. Любые идеи или предложения будут с благодарностью приняты. Спасибо!

.proj-container {
  display: grid;
  grid-template-columns: repeat(2, 427px);
  gap: 2px;
  border-radius: 10px;
  justify-content: center;
  margin-top: 50px;
}

.project-box {
  width: 400px;
  height: 400px;
  border-radius: 5px;
  margin: 20px 0;
  padding: 20px;
  background-color: white;
  border-radius: 30px;
  font-size: 24px;
  cursor: pointer;
  opacity: 0;
  filter: hue-rotate(360deg);
  border-width: 5px;
  border-color: black;
  box-shadow: h-offset v-offset blur spread color;
  border-style: solid;
  opacity: 0.9;
  transition: transform 0.3s ease, opacity 0.3s ease, box-shadow 0.3s ease;
  color: black;
  z-index: 100000;
}

.project-box::before {
  content: "";
  position: absolute;
  top: 0;
  left: 0;
  opacity: 1;
  z-index: -1;
  box-shadow: 0 0 10px rgba(0, 0, 0, 0.5);
}
<section id = "projects" class = "hidden box3 container responsive" style = "min-height: 10px;">
  <div class = "box3b">
    <div class = "glower">
    </div>
    <div class = "stars">
    </div>
  </div>
</section>

<section id = "projects" class = "hidden proj-container responsive">
  <div class = "project-box" onclick = "redirectToGitHub2()">
    <div class = "projrole">
      <h2>Founder | Developer</h2>
    </div>
    
    <div class = "projdays">
      <h2></h2>
    </div>
    
    <div class = "projused">
      <span class = "material-symbols-outlined">html</span>
      <span class = "material-symbols-outlined">javascript</span>
      <span class = "material-symbols-outlined">css</span>
      <span class = "material-symbols-outlined">database</span>
    </div>
    
    <div class = "photoproj">
      <img src = "img/ticket.png" alt = "Github ticket code." style = "height: 200px; width: 350px; border-radius: 25px;">
      <div class = "projname">
        <h2>IT Ticket Site</h2>
      </div>
    </div>
  </div>
  </div>
  
  <div class = "project-box container responsive" onclick = "redirectToGitHub()">
    <div class = "projrole">
      <h2>Founder | Developer</h2>
    </div>
    <div class = "projdays1">
      <h2></h2>
    </div>
    <div class = "projused">
      <span class = "material-symbols-outlined">html</span>
      <span class = "material-symbols-outlined">javascript</span>
      <span class = "material-symbols-outlined">css</span>
      <span class = "material-symbols-outlined">database</span>
    </div>
    <div class = "photoproj">
      <img src = "img/Banking.png" alt = "Github banking code." style = "height: 200px; width: 350px; border-radius: 25px;">
      <div class = "projname">
        <h2>Banking Website</h2>
      </div>
    </div>
  </div>
  
  <div class = "project-box container responsive" onclick = "redirectToGitHub4()">
    <div class = "projrole">
      <h2>Founder | Designer</h2>
    </div>
    <div class = "projdays3">
      <h2></h2>
    </div>
    <div class = "projused">
      <span class = "material-symbols-outlined">draw_abstract</span>
      <span class = "material-symbols-outlined">preview</span>
      <span class = "material-symbols-outlined">design_services</span>
      <span class = "material-symbols-outlined">details</span>
    </div>
    <div class = "photoproj">
      <img src = "img/icons.png" alt = "Github icon design." style = "height: 200px; width: 350px; border-radius: 15px;">
      <div class = "projname">
        <h2>Icon Design</h2>
      </div>
    </div>
  </div>
  </div>
  
  <div class = "project-box container responsive" onclick = "redirectToGitHub3()">
    <div class = "projrole">
      <h2>Founder | Developer</h2>
    </div>
    <div class = "projdays2">
      <h2></h2>
    </div>
    <div class = "projused">
      <span class = "material-symbols-outlined">html</span>
      <span class = "material-symbols-outlined">javascript</span>
      <span class = "material-symbols-outlined">database</span>
      <a><img src = "https://www.cdnlogo.com/logos/r/63/react.svg" style = "height: 20px;width: 20px;-webkit-filter: grayscale(100%);filter: grayscale(100%);"></a>
    </div>
    <div class = "photoproj">
      <img src = "img/react.png" alt = "Github react code." style = "height: 200px; width: 350px; border-radius: 15px;">
      <div class = "projname">
        <h2 style = "font-size: 25px;">Aegis Authentication</h2>
      </div>
    </div>
  </div>
  
  <hr style = "height:3px;border-width:0;color:rgb(0, 0, 0);background-color:rgb(0, 0, 0)">
  
  <div class = "project-box" onclick = "redirectToGitHub5()">
    <div class = "projrole">
      <h2>Founder | Developer</h2>
    </div>
    <div class = "projdays4">
      <h2></h2>
    </div>
    <div class = "projused">
      <span class = "material-symbols-outlined">html</span>
      <span class = "material-symbols-outlined">javascript</span>
      <span class = "material-symbols-outlined">css</span>
    </div>
    <div class = "photoproj">
      <img src = "img/Assets.png" alt = "Github assets code." style = "height: 200px; width: 350px; border-radius: 25px;">
      <div class = "projname">
        <h2>Pre-Made Assets</h2>
      </div>
    </div>
  </div>
  <div class = "project-box" onclick = "redirectToGitHub5()">
    <div class = "projrole">
      <h2>Founder | Developer</h2>
    </div>
    <div class = "projdays4">
      <h2></h2>
    </div>
    <div class = "projused">
      <span class = "material-symbols-outlined">html</span>
      <span class = "material-symbols-outlined">javascript</span>
      <span class = "material-symbols-outlined">css</span>
    </div>
    <div class = "photoproj">
      <img src = "img/Assets.png" alt = "Github assets code." style = "height: 200px; width: 350px; border-radius: 25px;">
      <div class = "projname">
        <h2>Pre-Made Assets</h2>
      </div>
    </div>
  </div>
</section>

У вас есть <hr> как прямой дочерний элемент сетки, он занимает «пустую» ячейку.

DBS 21.09.2023 16:22

Спасибо. Кнопка Tidy — ваш друг, и хорошее форматирование имеет решающее значение. Используя их, вы можете увидеть, что у вас есть проблемы с разметкой — дополнительные закрывающие теги div в нескольких местах. Это может быть вашей проблемой.

isherwood 21.09.2023 16:23

Горизонтальные правила обычно можно заменить рамкой или псевдоэлементами. Я бы попробовал это.

isherwood 21.09.2023 16:23

Я ценю это, DBS и Ишервуд, проблема заключалась в незакрытом теге <hr>.

SAV 21.09.2023 16:24

просто измените CSS grid-template-columns: repeat(2, 1fr);, чтобы предотвратить перекрытие

QuantumX 21.09.2023 16:32
Улучшение производительности загрузки с помощью 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 страниц, которые помогут...
1
5
69
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

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

Удалите тег hr

Удалите этот тег, это исправит ваш макет.

<hr style = "height:3px;border-width:0;color:rgb(0, 0, 0);background-color:rgb(0, 0, 0)">

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