0

I have seen many answers but none seem to work for me... My footer has come right next to the paragraphs. How can I get them to down of the page... Also how to make the whole page be seen at the same time without needing to scroll down?

Below is my code:

body {
  margin: 0;
  padding: 0;
  background: #85dcb8;
}

header {
  background: coral;
  padding: 1px;
  margin: 0px;
  text-align: center;
  border-bottom: black 4px solid;
  float: center;
}

header h1 {
  margin: 0px;
}

header p {
  border-bottom: solid 5px black;
  display: inline-block;
  padding-bottom: 10px;
}

.container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  text-align: center;
  width: 70%;
  margin-left: 20%;
}

.side-bar {
  grid-gap: 2px;
  padding-left: 10px;
  float: left;
}

.links {
  display: block;
  width: 100%;
  padding: 10px 20px;
  border-bottom: 1px solid black;
}

a {
  text-decoration: none;
  color: red;
}

a:hover {
  color: blue;
  text-decoration: underline;
}

footer {
  background-color: #000000;
  color: #fff;
  line-height: normal;
  word-spacing: 2px;
  text-align: center;
  padding: 50px;
}
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <link rel="stylesheet" href="style.css" />
  <title>Web Page</title>
</head>

<body>
  <header>
    <h1>Welcome to my web page</h1>
    <p>
      Lorem ipsum dolor sit amet consectetur adipisicing elit. Deleniti, ab!
    </p>
  </header>

  <aside>
    <div class="side-bar">
      <div class="links"><a href="#">Page 1</a></div>
      <div class="links"><a href="#">Page 2</a></div>
      <div class="links"><a href="#">Page 3</a></div>
      <div class="links"><a href="#">Page 4 </a></div>
      <div class="links"><a href="#">Page 5</a></div>
      <div class="links"><a href="#">Page 6</a></div>
      <div class="links"><a href="#">Page 7</a></div>
      <div class="links"><a href="#">Page 8</a></div>
      <div class="links"><a href="#">Page 9</a></div>
      <div class="links"><a href="#">Page 10</a></div>
    </div>
  </aside>

  <section>
    <div class="container">
      <div>
        <h2>Heading 1</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>

      <div>
        <h2>Heading 2</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 3</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 4</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 5</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 6</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
    </div>
  </section>

  <footer>
    This webpage officialy belongs to Anirudh. Copyrights since 2020 &copy;
  </footer>
</body>

</html>

Adding a margin and giving it a particular value makes it hard in math...So I would prefer some easier method with simple CSS.

Image of how it looks for me.

Also any mistakes in my code that can be improved to make it more efficient? Thanks.

EDIT: Adding an empty div helped me...Empty div with the class of clr and using clear:both; for the clr class in CSS works..

4 Answers4

0

body {
  margin: 0;
  padding: 0;
  background: #85dcb8;
}

header {
  background: coral;
  padding: 1px;
  margin: 0px;
  text-align: center;
  border-bottom: black 4px solid;
  float: center;
}

header h1 {
  margin: 0px;
}

header p {
  border-bottom: solid 5px black;
  display: inline-block;
  padding-bottom: 10px;
}

.container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  text-align: center;
  width: 70%;
  margin-left: 20%;
}

.side-bar {
  grid-gap: 2px;
  padding-left: 10px;
  float: left;
}

.links {
  display: block;
  width: 100%;
  padding: 10px 20px;
  border-bottom: 1px solid black;
}

a {
  text-decoration: none;
  color: red;
}

a:hover {
  color: blue;
  text-decoration: underline;
}

footer {
  background-color: #000000;
  color: #fff;
  line-height: normal;
  word-spacing: 2px;
  text-align: center;
  padding: 50px;
  clear: both;
}
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <link rel="stylesheet" href="style.css" />
  <title>Web Page</title>
</head>

<body>
  <header>
    <h1>Welcome to my web page</h1>
    <p>
      Lorem ipsum dolor sit amet consectetur adipisicing elit. Deleniti, ab!
    </p>
  </header>

  <aside>
    <div class="side-bar">
      <div class="links"><a href="#">Page 1</a></div>
      <div class="links"><a href="#">Page 2</a></div>
      <div class="links"><a href="#">Page 3</a></div>
      <div class="links"><a href="#">Page 4 </a></div>
      <div class="links"><a href="#">Page 5</a></div>
      <div class="links"><a href="#">Page 6</a></div>
      <div class="links"><a href="#">Page 7</a></div>
      <div class="links"><a href="#">Page 8</a></div>
      <div class="links"><a href="#">Page 9</a></div>
      <div class="links"><a href="#">Page 10</a></div>
      <div class="links"><a href="#">Page 7</a></div>
      <div class="links"><a href="#">Page 8</a></div>
      <div class="links"><a href="#">Page 9</a></div>
      <div class="links"><a href="#">Page 10</a></div>
    </div>
  </aside>

  <section>
    <div class="container">
      <div>
        <h2>Heading 1</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>

      <div>
        <h2>Heading 2</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 3</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 4</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 5</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 6</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 4</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 5</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 6</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
    </div>
  </section>

  <footer>
    This webpage officialy belongs to Anirudh. Copyrights since 2020 &copy;
  </footer>
</body>

</html>

You can check now... it's working

Ishita Ray
  • 672
  • 3
  • 8
0

body {
  margin: 0;
  padding: 0;
  background: #85dcb8;
}

header {
  background: coral;
  padding: 1px;
  margin: 0px;
  text-align: center;
  border-bottom: black 4px solid;
  float: center;
}

header h1 {
  margin: 0px;
}

header p {
  border-bottom: solid 5px black;
  display: inline-block;
  padding-bottom: 10px;
}

.container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  text-align: center;
  width: 70%;
  margin-left: 20%;
}

.side-bar {
  grid-gap: 2px;
  padding-left: 10px;
  float: left;
}

.links {
  display: block;
  width: 100%;
  padding: 10px 20px;
  border-bottom: 1px solid black;
}

a {
  text-decoration: none;
  color: red;
}

a:hover {
  color: blue;
  text-decoration: underline;
}

footer {
  background-color: #000000;
  color: #fff;
  line-height: normal;
  word-spacing: 2px;
  text-align: center;
  padding: 50px;
}
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <link rel="stylesheet" href="style.css" />
  <title>Web Page</title>
</head>

<body>
  <header>
    <h1>Welcome to my web page</h1>
    <p>
      Lorem ipsum dolor sit amet consectetur adipisicing elit. Deleniti, ab!
    </p>
  </header>

  <aside>
    <div class="side-bar">
      <div class="links"><a href="#">Page 1</a></div>
      <div class="links"><a href="#">Page 2</a></div>
      <div class="links"><a href="#">Page 3</a></div>
      <div class="links"><a href="#">Page 4 </a></div>
      <div class="links"><a href="#">Page 5</a></div>
      <div class="links"><a href="#">Page 6</a></div>
      <div class="links"><a href="#">Page 7</a></div>
      <div class="links"><a href="#">Page 8</a></div>
      <div class="links"><a href="#">Page 9</a></div>
      <div class="links"><a href="#">Page 10</a></div>
    </div>
  </aside>

  <section>
    <div class="container">
      <div>
        <h2>Heading 1</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>

      <div>
        <h2>Heading 2</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 3</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 4</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 5</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 6</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 4</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 5</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 6</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
    </div>
  </section>

  <footer>
    This webpage officialy belongs to Anirudh. Copyrights since 2020 &copy;
  </footer>
</body>

</html>

It's working...

Ishita Ray
  • 672
  • 3
  • 8
-1
section, aside {
    min-height: calc(100vh - 100px); 
    /* here, replace 100px with the size of your header and footer */
}

This makes it so the main content is, at a minimum, the size of the screen minus the header and the footer size, thus pushing the footer to the bottom of the page.

As for the rest of your code, it looks fine to me.

corn on the cob
  • 2,093
  • 3
  • 18
  • 29
  • Can you explain that line.... I don't know what is calc. –  Oct 03 '20 at 18:47
  • calc() basically means 100vh take away 100px, like a mathematical calculation – corn on the cob Oct 03 '20 at 18:47
  • @AayanamAnirudh 100vh also means the height of the browser window. Also, did you find this answer helpful? If so, could you please accept it? Thanks! – corn on the cob Oct 03 '20 at 18:59
  • It helped me a bit... But did not get me to the solution –  Oct 03 '20 at 19:02
  • What are you getting? Is there another issue? I'll improve my post if you like, I just need the details – corn on the cob Oct 03 '20 at 19:03
  • I did not understand what you have meant by height of the header and footer in the code's comment.... Also it requires a trial and error method to find the exact position for it. –  Oct 03 '20 at 19:04
  • 1
    yes, that is true - the height of the header and footer can be hard to find. but you can usually take a good guess and go from there, it shouldn't take too long – corn on the cob Oct 03 '20 at 19:05
  • This makes a gap on the top of the page between the header and the paragraphs –  Oct 03 '20 at 19:10
-2

body {
  margin: 0;
  padding: 0;
  background: #85dcb8;
}

header {
  background: coral;
  padding: 1px;
  margin: 0px;
  text-align: center;
  border-bottom: black 4px solid;
  float: center;
}

header h1 {
  margin: 0px;
}

header p {
  border-bottom: solid 5px black;
  display: inline-block;
  padding-bottom: 10px;
}

.container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  text-align: center;
  width: 70%;
  margin-left: 20%;
}

.side-bar {
  grid-gap: 2px;
  padding-left: 10px;
  float: left;
}

.links {
  display: block;
  width: 100%;
  padding: 10px 20px;
  border-bottom: 1px solid black;
}

a {
  text-decoration: none;
  color: red;
}

a:hover {
  color: blue;
  text-decoration: underline;
}

footer {
  background-color: #000000;
  color: #fff;
  line-height: normal;
  word-spacing: 2px;
  text-align: center;
  padding: 50px;
  clear: both;
}
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8" />
  <meta name="viewport" content="width=device-width, initial-scale=1.0" />
  <link rel="stylesheet" href="style.css" />
  <title>Web Page</title>
</head>

<body>
  <header>
    <h1>Welcome to my web page</h1>
    <p>
      Lorem ipsum dolor sit amet consectetur adipisicing elit. Deleniti, ab!
    </p>
  </header>

  <aside>
    <div class="side-bar">
      <div class="links"><a href="#">Page 1</a></div>
      <div class="links"><a href="#">Page 2</a></div>
      <div class="links"><a href="#">Page 3</a></div>
      <div class="links"><a href="#">Page 4 </a></div>
      <div class="links"><a href="#">Page 5</a></div>
      <div class="links"><a href="#">Page 6</a></div>
      <div class="links"><a href="#">Page 7</a></div>
      <div class="links"><a href="#">Page 8</a></div>
      <div class="links"><a href="#">Page 9</a></div>
      <div class="links"><a href="#">Page 10</a></div>
      <div class="links"><a href="#">Page 7</a></div>
      <div class="links"><a href="#">Page 8</a></div>
      <div class="links"><a href="#">Page 9</a></div>
      <div class="links"><a href="#">Page 10</a></div>
    </div>
  </aside>

  <section>
    <div class="container">
      <div>
        <h2>Heading 1</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>

      <div>
        <h2>Heading 2</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 3</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 4</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 5</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
      <div>
        <h2>Heading 6</h2>
        <p>
          Lorem ipsum dolor sit amet consectetur adipisicing elit. Dolorum facilis possimus consequuntur optio libero. Beatae praesentium officia quos odio saepe.
        </p>
      </div>
    </div>
  </section>

  <footer>
    This webpage officialy belongs to Anirudh. Copyrights since 2020 &copy;
  </footer>
</body>

</html>
Ishita Ray
  • 672
  • 3
  • 8