Watt Erikson
Watt Erikson

Reputation: 3

Html gap inbetween header and static image

I have been trying to use a static image on my website, but there is a large gap between the header and the image, I've tried removing padding and changing the image height in Photoshop and in HTML. Here's a fiddle of my problem https://jsfiddle.net/o27w80ve/

section.module:last-child {
  margin-bottom: 0;
}

section.module h2 {
  font-family: "Roboto Slab", serif;
  font-size: 30px;
}

section.module p {
  margin-bottom: 40px;
  font-size: 16px;
  font-weight: 300;
}

section.module p:last-child {
  margin-bottom: 0;
}

section.module.content {
  padding: 40px 0;
  color: #090C02;
}

section.module.content#section1 {
  background-color: #b23783;
}

section.module.content#section2 {
  background-color: #3783b2;
}

section.module.parallax {
  height: 600px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
}

section.module.parallax h1 {
  color: #8FD5A6;
  font-size: 48px;
  line-height: 600px;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  font-family: 'Julius Sans One', sans-serif;
}

section.module.parallax-1 {
  background-image: url("https://i.imgur.com/YpRAOt3.jpg");
}

@media all and (min-width: 600px) {
  section.module h2 {
    font-size: 42px;
  }
  section.module p {
    font-size: 20px;
  }
  section.module.parallax h1 {
    font-size: 96px;
  }
}

@media all and (min-width: 960px) {
  section.module.parallax h1 {
    font-size: 160px;
  }
}

.header ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #1e1e20;
}

.header li {
  float: right;
  text-align: middle;
}

.header li a {
  display: block;
  color: white;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-family: 'Bitter', serif;
}

.header li:hover {
  background-color: #fec10e;
  color: black;
}
<header class="header">
  <div>
    <ul>
      <li><a href="/">Testr Co.</a></li>
      <li><a href="#">Home</a></li>
      <li><a href="#">About Us</a></li>
      <li><a href="#">Blog</a></li>
    </ul>
  </div>
</header>
<section class="module parallax parallax-1">
  <div class="container">
    <h1>Example</h1>
  </div>
</section>

Upvotes: 0

Views: 47

Answers (2)

Pedro Costa
Pedro Costa

Reputation: 100

After inspecting your code you can notice that the 'section.module.parallax h1' has a margin-top of 40px. You need to use this (margin-top:0) to remove the gap.

Upvotes: 0

Michael Coker
Michael Coker

Reputation: 53709

That's called "margin collapse." The defaut margin-top on the h1 is collapsing outside of the parent.

https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Box_Model/Mastering_margin_collapsing

Parent and first/last child - If there is no border, padding, inline content, block_formatting_context created or clearance to separate the margin-top of a block from the margin-top of its first child block, or no border, padding, inline content, height, min-height, or max-height to separate the margin-bottom of a block from the margin-bottom of its last child, then those margins collapse. The collapsed margin ends up outside the parent.

section.module:last-child {
  margin-bottom: 0;
}

section.module h2 {
  font-family: "Roboto Slab", serif;
  font-size: 30px;
}

section.module p {
  margin-bottom: 40px;
  font-size: 16px;
  font-weight: 300;
}

section.module p:last-child {
  margin-bottom: 0;
}

section.module.content {
  padding: 40px 0;
  color: #090C02;
}

section.module.content#section1 {
  background-color: #b23783;
}

section.module.content#section2 {
  background-color: #3783b2;
}

section.module.parallax {
  height: 600px;
  background-position: 50% 50%;
  background-repeat: no-repeat;
  background-attachment: fixed;
  background-size: cover;
}

section.module.parallax h1 {
  color: #8FD5A6;
  font-size: 48px;
  line-height: 600px;
  font-weight: 700;
  text-align: center;
  text-transform: uppercase;
  text-shadow: 0 0 10px rgba(0, 0, 0, 0.2);
  font-family: 'Julius Sans One', sans-serif;
  margin-top: 0;
}

section.module.parallax-1 {
  background-image: url("https://i.imgur.com/YpRAOt3.jpg");
}

@media all and (min-width: 600px) {
  section.module h2 {
    font-size: 42px;
  }
  section.module p {
    font-size: 20px;
  }
  section.module.parallax h1 {
    font-size: 96px;
  }
}

@media all and (min-width: 960px) {
  section.module.parallax h1 {
    font-size: 160px;
  }
}

.header ul {
  list-style-type: none;
  margin: 0;
  padding: 0;
  overflow: hidden;
  background-color: #1e1e20;
}

.header li {
  float: right;
  text-align: middle;
}

.header li a {
  display: block;
  color: white;
  text-align: center;
  padding: 14px 16px;
  text-decoration: none;
  font-family: 'Bitter', serif;
}

.header li:hover {
  background-color: #fec10e;
  color: black;
}
<header class="header">
  <div>

    <ul>
      <li><a href="/">Testr Co.</a></li>
      <li><a href="#">Home</a></li>
      <li><a href="#">About Us</a></li>
      <li><a href="#">Blog</a></li>
    </ul>
  </div>
</header>
<section class="module parallax parallax-1">
  <div class="container">
    <h1>Example</h1>
  </div>
</section>

Upvotes: 1

Related Questions