How to Control 'Div' Overlapping in HTML

How to prevent divs from overlapping?

Please check the fiddle http://jsfiddle.net/6DtSS/5/
I've added clear:both to #homemidcontent
After you float the elements,you should clear it for the next element if it wants to sit right below.

How do I stop these divs from overlapping?

Just remove the min-width from your CSS! And give min-width to the container with margin: auto to make it center.

Try this CSS:

#container{
width: 70%;
min-width: 1000px;
margin: auto;
}
#left {
float: left;
width: 20%;
}
#content {
float: left;
width: 60%;
}
#right {
float: right;
width: 20%;
}

Check out fiddle here: http://jsfiddle.net/UaqU7/2/

how to stop this div's from overlapping?

Just get rid off position:absolute in your main class:

.main {  height: 500px;  width: 100%;}
.filter { background: red; height: 100%; float: left; width: 20%;}
.post-bar { background: blue; height: 100%; float: left; width: 60%;}
.advertisment { background: green; height: 100%; float: left; width: 20%;}
.footer { height: 250px; width: 100%; background: black; position: relative;}
<div class="main">  <div class="filter">
</div> <div class="post-bar">
</div> <div class="advertisment"> </div>
</div><div class="footer"></div>

How to control `div` overlapping in html

use z-index value to adjust them accordingly to layer.
its a style property: style="z-index:200"....

How to prevent divs from overlapping with another div on resizing?

You can use display:flex with flex-wrap to achieve what you want:

.App {
font-family: sans-serif;
text-align: center;
}

.grid-container {
display: flex;
flex-wrap: wrap;
grid-gap: 30px;
}

.card {
box-sizing: border-box;
width: calc(33.3333% - 20px);
padding: 30px;
height: 90%;
background-color: aqua;
min-width: 250px;
}
<div class="grid-container">
<div class="card">
<span> Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.",
"orem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset",
"orem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's. </span>
</div>
<div class="card">
<span> Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.",
"orem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset",
"orem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's. </span>
</div>
<div class="card">
<span> Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.",
"orem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset",
"orem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's. </span>
</div>
<div class="card">
<span> Lorem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset sheets containing Lorem Ipsum passages, and more recently with desktop publishing software like Aldus PageMaker including versions of Lorem Ipsum.",
"orem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's standard dummy text ever since the 1500s, when an unknown printer took a galley of type and scrambled it to make a type specimen book. It has survived not only five centuries, but also the leap into electronic typesetting, remaining essentially unchanged. It was popularised in the 1960s with the release of Letraset",
"orem Ipsum is simply dummy text of the printing and typesetting industry. Lorem Ipsum has been the industry's. </span>
</div>
</div>

How to prevent two same divs in HTML from overlapping?

You shouldn't use fixed positioning on those left/right sections. It's kind of hard to tell you what to do since I don't know what your ideal layout of this page is supposed to look like, but removing fixed positioning and applying flex to the parent with flex-wrap: wrap lets you use the existing CSS and have it layout in a way that I'm guessing is closer to whatever your end goal is. I also removed some unnecessary CSS and added a margin-bottom to .container so that there is room for the fixed footer.

Also changed your id's to classes, as others have pointed out that you should only have 1 id per page.

header {  background-color: #74afe0;  font-size: 35pt;  text-align: center;  height: 80px;  position: fixed;  left: 0px;  right: 0px;  width: 100%;  top: 0;  line-height: 80px;}
footer { background-color: #74afe0; position: fixed; bottom: 0px; width: 100%; left: 0px; height: 1em; text-align: right;}
.container { margin-top: 80px; margin-bottom: 1.5em; left: 0; bottom: 0; display: flex; flex-wrap: wrap;}
.container p,ul,h2 { margin: 0;}
.left-col { width: calc(30% - 1.5em); text-align: right; color: #74afe0; overflow: auto;}
.right-col { width: calc(70% - 2.5em); bottom: 1em; height: calc(100% - 80px - 1em); overflow: scroll; border-left: 3px solid #74afe0; padding-left: 1em;}
.content { font-size: 25px;}
<header>CSS Layout Project</header><div class="container">  <section class="left-col">    <div id="title">      <p>        <h2><b>Course Description</b></h2>      </p>    </div>    <div class="content">      <p>fields</p>    </div>  </section>  <section class="right-col">    <p>      <h2><b>Acdemic Integrity</b></h2>    </p>    <div class="content">      <p>For years I have been driving an old used car with a lot of mileage, and I hate it. It gets me where I need to go, but I’m tired of fixing leaks and broken parts all the time. It's annoying that I have to take it to the mechanic every time. Even        when they take care of everything, I know in a week I’ll just end up going back there.</p>    </div>  </section>  <section class="left-col">    <div class="content">      <p>fields</p>    </div>  </section>  <section class="right-col">    <div class="content">      <p>For years I have been driving an old used car with a lot of mileage, and I hate it. It gets me where I need to go, but I’m tired of fixing leaks and broken parts all the time. It's annoying that I have to take it to the mechanic every time. Even        when they take care of everything, I know in a week I’ll just end up going back there.</p>    </div>  </section></div><footer>© Copyright by XXXXXX</footer>

Stop div from overlapping

You are trying to include your header file after </body> tag. include the <?php include 'includes/footer.php'; ?> footer withing your <body> tags

<?php
session_start();
?>
<html>
<link rel="stylesheet" type="text/css" href="css/main.css">
<title>
Shadey Process
</title>
<body>
<?php
include 'includes/header.php';
include 'includes/navigation.php';
?>
<div class="body">
This is the body.
Due to errors beyond my control everything I had worked so hard to do is gone.
</div>
<?php
include 'includes/footer.php';
?>
</body>
</html>

Updated (after read Mike's comment)

if still doesn't work this.i think problem is in your footer.php please post your footer.php here or put this code line to your footers div

<div class="container-fluid" style="bottom:0; position:fixed;">

My div content gets overlapped by the next div when i switch to small devices

so i randomly fixed it just by adding this code on css

.card-img-top {
width: 100%;
height: 15vw;
object-fit: cover;
}

How to make a div overlap other

Using position: absolute; for the red div will cause it to "float", and then the blue div will start at the same location as the red one.

See code snippet: