Make these columns equal height - html

I'm having trouble making these columns equal height. When the title is longer it pushes the column down and makes it larger than the others. how can I make the columns equal height even when the length of the titles are different?
I tried these answers: How can I make Bootstrap columns all the same height?
but they didn't work.
I'm using Bootstrap 4.
Here is my code:
#courses1 {
padding-top: 50px;
padding-bottom: 50px;
background-image: url('');
background-repeat: no-repeat;
background-size: cover;
background-position: center top;
position: relative;
z-index: 1;
}
#courses1::before {
background-color: #ffffff;
content: '';
top: 0;
left: 0;
right: 0;
bottom: 0;
position: absolute;
z-index: -1;
}
#courses1 .course-list {
margin-top: 55px;
}
#courses1 .course-list .course-container {
border-width: 1px;
border-color: #e6e5e5;
border-style: solid;
}
#courses1 .course-list .course-container .course-title {
margin-top: 25px;
margin-bottom: 25px;
}
#courses1 .course-list .course-container .course-title h5 {
text-align: center;
padding-left: 10px;
padding-right: 10px;
}
#courses1 .course-list .course-container .course-title h5 a {
font-weight: 600;
color: #101111;
}
#courses1 .course-list .course-container .course-image img {
width: 100%;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta {
padding-left: 10px;
padding-right: 10px;
padding-top: 10px;
border-top-width: 1px;
border-top-color: #e6e5e5;
border-top-style: solid;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta .course-icons {
color: rgb(128, 129, 129);
font-size: 14px;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta .free-course p {
color: rgb(7, 134, 113);
font-size: 14px;
font-weight: 600;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta .course-pricing a {
color: rgb(231, 80, 10);
font-size: 14px;
font-weight: 600;line-height: 24px;
}
<script src="https://cdn.jsdelivr.net/npm/bootstrap#4.6.0/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.2/css/all.min.css" rel="stylesheet"/>
<link href="https://cdn.jsdelivr.net/npm/bootstrap#4.6.0/dist/css/bootstrap.min.css" rel="stylesheet"/>
<section id="courses1">
<div class="container">
<div class="row course-list">
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
This is a post with a long title
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="free-course">
<p>FREE</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
Short title post
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="free-course">
<p>FREE</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
This is another post with a very long, long, long title
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="free-course">
<p>FREE</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
Another short title
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="course-pricing">
<p>$49 <i class="fas fa-shopping-cart"></i></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>

Just adding some class and you will be fine:
Add d-flex h-100 flex-column to course-container to make it full height and still appear as intended.
Another 'mt-autotocourse-bottom-container` to make the bottom box always in the bottom no matter what.
Edit: I'm just adding to the second box so you can compare the different, add the same to other box will achieve what you want.
#courses1 {
padding-top: 50px;
padding-bottom: 50px;
background-image: url('');
background-repeat: no-repeat;
background-size: cover;
background-position: center top;
position: relative;
z-index: 1;
}
#courses1::before {
background-color: #ffffff;
content: '';
top: 0;
left: 0;
right: 0;
bottom: 0;
position: absolute;
z-index: -1;
}
#courses1 .course-list {
margin-top: 55px;
}
#courses1 .course-list .course-container {
border-width: 1px;
border-color: #e6e5e5;
border-style: solid;
}
#courses1 .course-list .course-container .course-title {
margin-top: 25px;
margin-bottom: 25px;
}
#courses1 .course-list .course-container .course-title h5 {
text-align: center;
padding-left: 10px;
padding-right: 10px;
}
#courses1 .course-list .course-container .course-title h5 a {
font-weight: 600;
color: #101111;
}
#courses1 .course-list .course-container .course-image img {
width: 100%;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta {
padding-left: 10px;
padding-right: 10px;
padding-top: 10px;
border-top-width: 1px;
border-top-color: #e6e5e5;
border-top-style: solid;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta .course-icons {
color: rgb(128, 129, 129);
font-size: 14px;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta .free-course p {
color: rgb(7, 134, 113);
font-size: 14px;
font-weight: 600;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta .course-pricing a {
color: rgb(231, 80, 10);
font-size: 14px;
font-weight: 600;line-height: 24px;
}
<script src="https://cdn.jsdelivr.net/npm/bootstrap#4.6.0/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.2/css/all.min.css" rel="stylesheet"/>
<link href="https://cdn.jsdelivr.net/npm/bootstrap#4.6.0/dist/css/bootstrap.min.css" rel="stylesheet"/>
<section id="courses1">
<div class="container">
<div class="row course-list">
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
This is a post with a long title
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="free-course">
<p>FREE</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container d-flex h-100 flex-column">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
Short title post
</h5>
</div>
<div class="course-bottom-container mt-auto">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="free-course">
<p>FREE</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
This is another post with a very long, long, long title
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="free-course">
<p>FREE</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
Another short title
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="course-pricing">
<p>$49 <i class="fas fa-shopping-cart"></i></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>

Your columns are already the same height, you just have to set the height of your course-container to 100% to see it. If you then also want to have the footer aligned the same over each card and stuff, you can achieve this by styling your cards with flexbox.
Also check out bootstrap's card components, these might be helpful to you as a starting point:
#courses1 {
padding-top: 50px;
padding-bottom: 50px;
background-image: url('');
background-repeat: no-repeat;
background-size: cover;
background-position: center top;
position: relative;
z-index: 1;
}
#courses1::before {
background-color: #ffffff;
content: '';
top: 0;
left: 0;
right: 0;
bottom: 0;
position: absolute;
z-index: -1;
}
#courses1 .course-list {
margin-top: 55px;
}
#courses1 .course-list .course-container {
border-width: 1px;
border-color: #e6e5e5;
border-style: solid;
height: 100%; /* To show that all columns have same height! */
}
#courses1 .course-list .course-container .course-title {
margin-top: 25px;
margin-bottom: 25px;
}
#courses1 .course-list .course-container .course-title h5 {
text-align: center;
padding-left: 10px;
padding-right: 10px;
}
#courses1 .course-list .course-container .course-title h5 a {
font-weight: 600;
color: #101111;
}
#courses1 .course-list .course-container .course-image img {
width: 100%;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta {
padding-left: 10px;
padding-right: 10px;
padding-top: 10px;
border-top-width: 1px;
border-top-color: #e6e5e5;
border-top-style: solid;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta .course-icons {
color: rgb(128, 129, 129);
font-size: 14px;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta .free-course p {
color: rgb(7, 134, 113);
font-size: 14px;
font-weight: 600;
}
#courses1 .course-list .course-container .course-bottom-container .course-meta .course-pricing a {
color: rgb(231, 80, 10);
font-size: 14px;
font-weight: 600;line-height: 24px;
}
<script src="https://cdn.jsdelivr.net/npm/bootstrap#4.6.0/dist/js/bootstrap.bundle.min.js"></script>
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<link href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/5.15.2/css/all.min.css" rel="stylesheet"/>
<link href="https://cdn.jsdelivr.net/npm/bootstrap#4.6.0/dist/css/bootstrap.min.css" rel="stylesheet"/>
<section id="courses1">
<div class="container">
<div class="row course-list">
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
This is a post with a long title
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="free-course">
<p>FREE</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
Short title post
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="free-course">
<p>FREE</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
This is another post with a very long, long, long title
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="free-course">
<p>FREE</p>
</div>
</div>
</div>
</div>
</div>
<div class="col-md-6 col-lg-3 course-list-col">
<div class="course-container">
<div class="course-image">
<img src="https://cdn.pixabay.com/photo/2021/02/10/22/23/lake-6003746__340.jpg" alt="" class="img-fluid">
</div>
<div class="course-title">
<h5>
Another short title
</h5>
</div>
<div class="course-bottom-container">
<div class="course-meta d-flex justify-content-between">
<div class="course-icons">
<i class="fas fa-users" aria-hidden="true"></i> 369
<i class="fas fa-comments" aria-hidden="true" style="margin-left: 10px;"></i> 187
</div>
<div class="course-pricing">
<p>$49 <i class="fas fa-shopping-cart"></i></p>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</section>

Related

Place SVG in bottom right hand corner of image Bootstrap

I am trying to get an SVG to go in the bottom right-hand corner of an image in a bootstrap card. I tried a solution similar to this: picture on the bottom right cornor of image but using the CSS for the icon makes my SVG disappear completely. I did not include the SVG tags in my code snippet because it was very long. But the full SVG I am using can be found here: https://communityloaves.org/wp-content/uploads/2022/03/breadherobadge.svg
Using the included code the cards look like this:
I would like them instead to have the SVG in the bottom right corner of the all green image. like in the second picture.
.image{
height:100%;
position:relative;
background-color:green;
background-size: cover;
background-image: url(https://communityloaves.org/wp-content/uploads/2021/05/Avatar-2-450x450.jpg);
}
.image .icon {
position:absolute;
bottom:0px;
right:0px;
}
p.dash-intro.nav-btns {
padding-top: 3rem;
}
.col-md-4.padding-1 {
padding-left: 5px;
padding-right: 5px;
}
.ann-text {
margin-bottom: 0px !important;
}
.ann-img {
max-height: 40rem;
}
.dash-intro {
color: black;
font-size: 18px;
margin-top: 35px;
}
.member-img {
max-height: 7rem;
margin-bottom: 6px;
padding-left: 15px;
}
p.card-text {
font-size: 11px;
padding: 9px 15px 9px 0px;
}
.special {
color: black;
font-size: 19px;
font-weight: bold;
}
.card-header {
padding: 0.75rem 1.25rem;
margin-bottom: 0;
background-color: #D4E1D4;
border-bottom: 1px solid rgba(0,0,0,0.125);
}
.hide {
display: none;
}
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap#4.0.0/dist/css/bootstrap.min.css" integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
<div class="container-fluid">
<br>
<hr>
<div class="row mt-3">
<div class="col-md-12">
<h4 class="font-weight-bold mb-3" id="members">Hub Members</h4>
</div>
</div>
<div class="row">
<div class="col-md-4 padding-1">
<div class="card border-success mb-5">
<div class="row g-2">
<div class="col-md-5 col-12 text-center padding-0">
<div class="image">
<div class="icon"><svg goes here. I didnt inlcude the full svg because it was too long> </div>
</div>
</div>
<div class="col-md-7 col-12 padding-0">
<p class="card-text">
<span class="font-weight-bold">Jane D <br></span>
<span class="font-weight-bold">Member Since: </span> Apr 13, 2022 <br>
<span class="font-weight-bold">First Donation: </span> Feb 27, 2022 <br>
<span class="email-text"><span class="font-weight-bold"><i class="fa fa-envelope"></i></span> janedoe#gmail.com</span>
<br><span class="font-weight-bold"><i class="fa fa-phone"></i></span> 555 555 555 (cell) <br><span class="font-weight-bold">Loaves to date: </span> 5
</p>
</div>
</div>
</div>
</div>
<div class="col-md-4 padding-1">
<div class="card border-success mb-5">
<div class="row g-2">
<div class="col-md-5 col-12 text-center padding-0">
<div class="image" stlye="background-image: url();">
<div class="icon">><svg goes here. I didnt inlcude the full svg because it was too long></div>
</div>
</div>
<div class="col-md-7 col-12 padding-0">
<p class="card-text">
<span class="font-weight-bold">Jane D <br></span>
<span class="font-weight-bold">Member Since: </span> Apr 13, 2022 <br>
<span class="font-weight-bold">First Donation: </span> Feb 27, 2022 <br>
<span class="email-text"><span class="font-weight-bold"><i class="fa fa-envelope"></i></span> janedoe#gmail.com</span>
<br><span class="font-weight-bold"><i class="fa fa-phone"></i></span> 555 555 555 (cell) <br><span class="font-weight-bold">Loaves to date: </span> 5
</p>
</div>
</div>
</div>
</div>
<div class="col-md-4 padding-1">
<div class="card border-success mb-5">
<div class="row g-2">
<div class="col-md-5 col-12 text-center padding-0">
<div class="image" stlye="background-image: url();">
<div class="icon">><svg goes here. I didnt inlcude the full svg because it was too long></div>
</div>
</div>
<div class="col-md-7 col-12 padding-0">
<p class="card-text">
<span class="font-weight-bold">Jane D <br></span>
<span class="font-weight-bold">Member Since: </span> Apr 13, 2022 <br>
<span class="font-weight-bold">First Donation: </span> Feb 27, 2022 <br>
<span class="email-text"><span class="font-weight-bold"><i class="fa fa-envelope"></i></span> janedoe#gmail.com</span>
<br><span class="font-weight-bold"><i class="fa fa-phone"></i></span> 555 555 555 (cell) <br><span class="font-weight-bold">Loaves to date: </span> 5
</p>
</div>
</div>
</div>
</div>
</div>
</div>
I add an image inside .icon class you can add your svg.
Basically you need to give parent class which is .icon a position:relative and your svg (child) position:absolute than you can play inside with
bottom, left, right and top properties which in this situation need
bottom:0;
right: 0;
Here is your code
*,
*::before,
*::after {
box-sizing: border-box;
}
.image{
height:100%;
position:relative;
background-color:green;
background-size: cover;
}
.image .icon {
position:relative;
width: 100%;
height: 100%;
}
.image .icon img{
position: absolute;
bottom:0;
right: 0;
border-radius: 100%;
width: 80px;
}
p.dash-intro.nav-btns {
padding-top: 3rem;
}
.col-md-4.padding-1 {
padding-left: 5px;
padding-right: 5px;
}
.ann-text {
margin-bottom: 0px !important;
}
.ann-img {
max-height: 40rem;
}
.dash-intro {
color: black;
font-size: 18px;
margin-top: 35px;
}
.member-img {
max-height: 7rem;
margin-bottom: 6px;
padding-left: 15px;
}
p.card-text {
font-size: 11px;
padding: 9px 15px 9px 0px;
}
.special {
color: black;
font-size: 19px;
font-weight: bold;
}
.card-header {
padding: 0.75rem 1.25rem;
margin-bottom: 0;
background-color: #D4E1D4;
border-bottom: 1px solid rgba(0,0,0,0.125);
}
.hide {
display: none;
}
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/bootstrap#4.0.0/dist/css/bootstrap.min.css"
integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm"
crossorigin="anonymous"
/>
<div class="container-fluid">
<br />
<hr />
<div class="row mt-3">
<div class="col-md-12">
<h4 class="font-weight-bold mb-3" id="members">Hub Members</h4>
</div>
</div>
<div class="row">
<div class="col-md-4 padding-1">
<div class="card border-success mb-5">
<div class="row g-2">
<div class="col-md-5 col-12 text-center padding-0">
<div class="image">
<div class="icon">
<img
src="https://source.unsplash.com/random/100x100"
alt=""
/>
</div>
</div>
</div>
<div class="col-md-7 col-12 padding-0">
<p class="card-text">
<span class="font-weight-bold">Jane D <br /></span>
<span class="font-weight-bold">Member Since: </span> Apr 13,
2022 <br />
<span class="font-weight-bold">First Donation: </span> Feb 27,
2022 <br />
<span class="email-text"
><span class="font-weight-bold"
><i class="fa fa-envelope"></i
></span>
janedoe#gmail.com</span
>
<br /><span class="font-weight-bold"
><i class="fa fa-phone"></i
></span>
555 555 555 (cell) <br /><span class="font-weight-bold"
>Loaves to date:
</span>
5
</p>
</div>
</div>
</div>
</div>
</div>
</div>

Facing problem in setting margins in bootsrap cards

I am working on a mobile website ( 360x640) .
Firstly, I am not able to fill the empty spaces on the right with text in the talk to astrologer section . I am not able to shift 25 years of text on the right side.
Secondly, I am not able to align font awesome with the text .
Can someone help me in setting margins so that it looks exactly similar to what I want ??
Thirdly , Phone font awesome which I want <i class="fas fa-phone-alt"></i> is not working ,
What do I want to achieve ??
My Frontend
Please help in achieving what I want to !!!!
body {
margin-left: 20px;
margin-top: 20px;
margin-right: 20px;
font-size: 30px;
}
.footer {
position: fixed;
left: 0;
bottom: 0;
width: 100%;
background-color: rgb(241, 241, 241);
color: orangered;
text-align: center;
font-size: 30px;
}
.experience {
float: right;
}
.orange {
background-color: #f78336;
font-size: 30px;
color: white;
}
i {
color: #f78336;
}
.call-btn {
background-color: #f78336;
padding: 15px;
margin-left: 40px;
width: 300px;
box-shadow: 5px 10px #c8c8c8;
}
<!doctype html>
<html lang="en">
<head>
<link href="https://cdn.jsdelivr.net/npm/bootstrap#5.1.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-F3w7mX95PdgyTmZZMECAngseQB83DfGTowi0iMjiWaeVhAn4FJkqJByhZMI3AhiU" crossorigin="anonymous">
<link rel="stylesheet" type="text/css" href="../assets/talk.css" />
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css" integrity="sha384-B4dIYHKNBt8Bc12p+WXckhzcICo0wtJAoU8YZTY5qE0Id1GSseTk6S+L3BlXeVIU" crossorigin="anonymous">
<title>Talk to an Astrologer</title>
</head>
<body>
<!-- Search bar-->
<div class ="search-bar sticky-top " >
<ul class="navbar navbar-light bg-light justify-content-end ">
<a class="navbar-brand " href="# ">
<img src="../assets/search.png " width="30 " height="30 " alt=" ">
</a>
<a class="navbar-brand " href="# ">
<img src="../assets/filter.png " width="30 " height="30 " alt=" ">
</a>
<a class="navbar-brand " href="# ">
<img src="../assets/sort.png " width="30 " height="30 " alt=" ">
</a>
</ul>
</div>
<!--- MAIN SECTION -->
<div class="main mb-3 ">
<h1><b>Talk to an Astrologer</b></h1>
<div class="card flex-row flex-wrap mb-3 mx-3 ">
<div class="card-header border-0 ">
<img src="//placehold.it/200 " width="200 " height ="200 " alt=" ">
</div>
<div class="card-block mx-2 ">
<span style ="float: right; "class ="experience ">25 years</span>
<h2 class="card-title "><b>Arvind Shukla</b></h2>
<p class="card-text "><i class="fas fa-user "></i>Cofee Cup Reading ,<br>Falit Jyotish,Kundali Grah Dosh,<br>Vastu,Astrology,Vedic Astrology,<br>Palmistry,Numerology,Face<br> Reading,Tarot</p>
<p class="card-text "><i class="fas fa-om "></i>English,Hindi</p>
<p class="card-text "><i class="fas fa-money-bill-wave "></i><b>₹100/Min</b></p>
<i class="fas fa-phone " style = color:white></i>Talk on Call
</div>
</div>
</div>
</div>
</body>
</html>
try this one it will work as expected ,
<body>
<!-- Search bar-->
<!--- MAIN SECTION -->
<div class="main mb-3 ">
<h1><b>Talk to an Astrologer</b></h1>
<div class="card ">
<div class="card-header border-0 ">
<img src="//placehold.it/200 " width="200 " height ="200 " alt=" ">
</div>
<div class="card-block mx-2 ">
<div style="display: flex; flex-direction: row; place-content: space-between; width: 100%">
<h2 class="card-title "><b>Arvind Shukla</b></h2>
<span style ="float: right; " class ="experience ">25 years</span>
</div>
<p class="card-text "><i class="fas fa-user "></i>Cofee Cup Reading ,<br>Falit Jyotish,Kundali Grah Dosh,<br>Vastu,Astrology,Vedic Astrology,<br>Palmistry,Numerology,Face<br> Reading,Tarot</p>
<p class="card-text "><i class="fas fa-om "></i>English,Hindi</p>
<p class="card-text "><i class="fas fa-money-bill-wave "></i><b>₹100/Min</b></p>
<div class="btn orange call-btn">
<i class="fas fa-phone " style = color:white></i>
Talk on Call
</div>
</div>
</div>
</div>
</div>
</body>
css ,
body {
margin-left: 20px;
margin-top: 20px;
margin-right: 20px;
font-size: 20px!important;
}
.footer {
position: fixed;
left: 0;
bottom: 0;
width: 100%;
background-color: rgb(241, 241, 241);
color: orangered;
text-align: center;
font-size: 20px !important;
}
.experience {
float: right;
}
.orange {
background-color: #f78336;
font-size: 20px !important;
color: white;
}
i {
color: #f78336;
}
.call-btn {
background-color: #f78336;
padding: 15px;
margin-left: 40px;
width: 300px;
box-shadow: 5px 10px #c8c8c8;
}
.card{
border: 1px solid #707070;
display: flex;
flex-direction: row;
flex-flow: row;
place-content: stretch;
justify-content: start;
width: 100%;
padding-bottom: 20px;
}
.card-block{
width: 100%;
}
.card-header{
height: 300px;
width: 300px;
}
for font check wheather you add the font awesome script of install locally the font awasome in you project
Can you try the following code. It is not perfect but its OK i guess.
body {
margin: 0px;
font-size: 30px;
}
.footer {
position: fixed;
left: 0;
bottom: 0;
width: 100%;
background-color: rgb(241, 241, 241);
color: orangered;
text-align: center;
font-size: 30px;
}
.orange {
background-color: #f78336;
font-size: 30px;
color: white;
}
i {
color: #f78336;
}
.call-btn {
background-color: #f78336;
padding: 15px;
margin-left: 40px;
width: 300px;
box-shadow: 5px 10px #c8c8c8;
}
.card{
max-width: 750px;
width: auto;
}
.fas,.fa{
margin-right: 10px;
}
<!doctype html>
<html lang="en">
<head>
<link href="https://cdn.jsdelivr.net/npm/bootstrap#5.1.1/dist/css/bootstrap.min.css" rel="stylesheet" integrity="sha384-F3w7mX95PdgyTmZZMECAngseQB83DfGTowi0iMjiWaeVhAn4FJkqJByhZMI3AhiU" crossorigin="anonymous">
<link rel="stylesheet" type="text/css" href="./style.css" />
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.5.0/css/all.css" integrity="sha384-B4dIYHKNBt8Bc12p+WXckhzcICo0wtJAoU8YZTY5qE0Id1GSseTk6S+L3BlXeVIU" crossorigin="anonymous">
<title>Talk to an Astrologer</title>
</head>
<body>
<!-- Search bar-->
<ul class="navbar navbar-light bg-light justify-content-between">
<h1><b>Talk to an Astrologer</b></h1>
<div>
<a class="navbar-brand " href="# ">
<img src="../assets/search.png " width="30 " height="30 " alt=" ">
</a>
<a class="navbar-brand " href="# ">
<img src="../assets/filter.png " width="30 " height="30 " alt=" ">
</a>
<a class="navbar-brand " href="# ">
<img src="../assets/sort.png " width="30 " height="30 " alt=" ">
</a>
</div>
</ul>
<!--- MAIN SECTION -->
<div class="main mb-3 ">
<div class="card flex-row flex-wrap mb-3 justify-content-between" >
<div class="card-header border-0 w-1/4">
<img src="//placehold.it/200 "alt=" ">
</div>
<div class="card-block flex justify-content-between w-3/4 mx-auto">
<span style ="float: right; "class ="experience text-center">25 years</span>
<h2 class="card-title "><b>Arvind Shukla</b></h2>
<p class="card-text "><i class="fas fa-user "></i>Cofee Cup Reading ,<br>Falit Jyotish,Kundali Grah Dosh,<br>Vastu,Astrology,Vedic Astrology,<br>Palmistry,Numerology,Face<br> Reading,Tarot</p>
<p class="card-text "><i class="fas fa-om "></i>English,Hindi</p>
<p class="card-text "><i class="fas fa-money-bill-wave"></i><b>₹100/Min</b></p>
<i class="fa fa-phone " style = color:white></i>Talk on Call
</div>
</div>
</div>
</div>
</body>
</html>

How to enable scroll for specific portion of a HTML page

I am using Scss for styling the page and need to set scroll for specific parts of a HTML page.
when a user doing a scroll I need to keep the Categories(left) & Cart (Right) area to be strick in their position. But the center part needs to be scroll till the filtered items are reaching the top (bottom of the breadcrumb). If the user scroll further the filtered items will scroll underneath the filter and search bar section.
Can Anyone help me to fix it.
HTML :
<div class="container-fluid px-5">
<div class="row pt-4 pr-0">
<div class="col-sm-12 px-4 pt-2">
<app-gropcard-breadcrumb></app-gropcard-breadcrumb>
</div>
<div class="col-sm-12">
<div class="row">
<div class="col-sm-3">
<mat-card class="col-sm-12 p-0 mat-elevation-z10" style="background-color: #0084FF;color: white;">
<mat-card-header class="d-flex justify-content-center p-2">
<mat-card-title class="mb-0">Categories</mat-card-title>
</mat-card-header>
<mat-card-content>
<mat-tree [dataSource]="dataSource" [treeControl]="treeControl" class="tree mt-3 pl-3 ">
<!-- This is the tree node template for leaf nodes -->
<mat-tree-node *matTreeNodeDef="let node" matTreeNodeToggle>
<li class="mat-tree-node">
<!-- use a disabled button to provide padding for tree leaf -->
<button class="TreeButton" mat-icon-button disabled></button>
<span (click)="Category(node)">{{node.name}}</span>
</li>
</mat-tree-node>
<!-- This is the tree node template for expandable nodes -->
<mat-nested-tree-node *matTreeNodeDef="let node; when: hasChild">
<li>
<div class="mat-tree-node" [attr.aria-label]="'toggle ' + node.name">
<button class="TreeButton" mat-icon-button matTreeNodeToggle
[attr.aria-label]="'toggle ' + node.name">
<mat-icon class="mat-icon-rtl-mirror">
{{treeControl.isExpanded(node) ? 'expand_more' : 'chevron_right'}}
</mat-icon>
</button>
<span matTreeNodeToggle (click)="Category(node)">{{node.name}}</span>
</div>
<ul class="pl-2" [class.tree-invisible]="!treeControl.isExpanded(node)">
<ng-container matTreeNodeOutlet></ng-container>
</ul>
</li>
</mat-nested-tree-node>
</mat-tree>
</mat-card-content>
</mat-card>
</div>
<div class="col-sm-6 containerbackground">
<div class="col-sm-12 p-0 d-flex justify-content-center">
<img class="w-100 banner"
[src]="mListedPartyBanner">
</div>
<div class="col-sm-12">
<div class="row">
<div class="col-sm-3">
<div class="row">
<h5 class="mt-4 mb-2">Filtered Items</h5>
</div>
</div>
<div class="col-sm-5 search pt-4" fxShow="true" fxHide.gt-sm="false">
<form class="search" >
<mat-form-field class="w-100" appearance="outline">
<input type="text" #myInput matInput placeholder="Search" maxlength="50" (input)="Search(myInput.value)" autocomplete='null' [formControl]="myControl">
<button matTooltip="Search" matSuffix mat-icon-button>
<mat-icon>
search
</mat-icon>
</button>
</mat-form-field>
</form>
</div>
<div class="col-sm-4 d-flex justify-content-end">
<div class="View mt-4 mb-2 mr-4">
<div class="row">
<button matTooltip="Filter"[matMenuTriggerFor]="menu" mat-icon-button>
<mat-icon>filter_list</mat-icon>
</button>
<mat-menu #menu="matMenu">
<button (click)="sortBy(data?.id)" mat-menu-item *ngFor="let data of sortList" [value]="data?.id">
<span>{{data?.value}}</span>
</button>
</mat-menu>
<button [ngClass]="{'ActiveButton': displayMode === 1}" (click)="onDisplayModeChange(1)"
matTooltip="List view" mat-icon-button>
<mat-icon>view_headline</mat-icon>
</button>
<button [ngClass]="{'ActiveButton': displayMode === 2}" (click)="onDisplayModeChange(2)"
matTooltip="Grid view" mat-icon-button>
<mat-icon>view_module</mat-icon>
</button>
</div>
</div>
</div>
</div>
</div>
<hr>
<div class="col-sm-12" *ngIf='displayMode==1'>
<div class="row d-flex justify-content-center">
<div class="col-sm-6 p-2 " *ngFor="let prod of ListedPartyItems; let ind = index">
<mat-card class="py-1" matRipple>
<div class="corner-ribbon top-right sticky blue shadow" *ngIf='prod?.PROMO_PRICE'>
{{((prod?.PRODUCT_PRICE-prod?.PROMO_PRICE)/prod?.PRODUCT_PRICE)*100 | number: '1.0-0'}}% Off</div>
<div class="row">
<div class="ImageDiv">
<img class="w-100 Img p-1" [src]="prod['IMAGE_PATH_1']">
</div>
<div class="row NameDiv d-flex ProductData justify-content-center">
<div class="Name mt-2">
<span>{{prod?.ITEM_DESCRIPTION}}</span>
</div>
<div class="Price mt-2">
<span class="ProductPrice">{{prod?.PROMO_PRICE ? (prod?.PROMO_PRICE | number:'.1-2') :
(prod?.PRODUCT_PRICE | number:'.1-2')}}<span class="pl-1"
[innerHtml]="mCurrencyCode"></span></span>
<span class="PromotionPrice mt-1 pl-1" *ngIf='prod?.PROMO_PRICE'>{{prod?.PRODUCT_PRICE |
number:'.1-2'}}<span class="pl-1" [innerHtml]="mCurrencyCode"></span></span>
</div>
<div class="col-sm-12">
<div class="row">
<div class="d-flex justify-content-center mt-2 w-100">
<button type="button" (click)="Decrement( ind)" class="btnStyles">–</button>
<input type="text" readonly class="quantityBox" [(ngModel)]="prod.qty">
<button type="button" (click)="Increment(ind)" class="btnStyles">+</button>
</div>
<div class="col-sm-12 mt-2 d-flex justify-content-center">
<div class="row">
<div class="col-sm-6">
<button (click)="AddToCart(prod?.PRODUCT_CODE,prod?.UOM,prod?.qty, ind)"
class="col-sm-12 ProductButton " mat-raised-button>
<mat-icon class="iconSize Cursor">shopping_cart</mat-icon>
</button>
</div>
<div class="col-sm-6">
<button (click)="SelectedProduct(prod?.PRODUCT_CODE)" class="col-sm-12 ProductButton"
mat-raised-button>More</button>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</mat-card>
</div>
</div>
</div>
<div class="col-sm-12" *ngIf='displayMode==2'>
<div class="row">
<div *ngIf="IsItemFound" style="display:block;margin:auto;">
<img src="../../../../assets/oops.png" alt="">
</div>
<div class="col-sm-4 p-2" *ngFor="let prod of ListedPartyItems; let ind = index">
<mat-card matRipple class="p-0 ">
<div class="corner-ribbon top-right sticky blue shadow" *ngIf='prod?.PROMO_PRICE'>
{{((prod?.PRODUCT_PRICE-prod?.PROMO_PRICE)/prod?.PRODUCT_PRICE)*100 | number: '1.0-0'}}% Off</div>
<img class="d-block w-100 Img p-1" [src]="prod['IMAGE_PATH_1']">
<div class="w-100 d-flex ProductData justify-content-center">{{prod?.ITEM_DESCRIPTION}}</div>
<div class="col-sm-12 mt-2 d-flex justify-content-center">
<span class="ProductPrice">{{prod?.PROMO_PRICE ? (prod?.PROMO_PRICE | number:'.1-2') :
(prod?.PRODUCT_PRICE | number:'.1-2')}}<span class="pl-1"
[innerHtml]="mCurrencyCode"></span></span>
<span class="PromotionPrice mt-1 pl-1" *ngIf='prod?.PROMO_PRICE'>{{prod?.PRODUCT_PRICE |
number:'.1-2'}}<span class="pl-1" [innerHtml]="mCurrencyCode"></span></span>
</div>
<div class="d-flex justify-content-center mt-2">
<button type="button" (click)="Decrement( ind)" class="btnStyles">–</button>
<input type="text" readonly class="quantityBox" [(ngModel)]="prod.qty">
<button type="button" (click)="Increment(ind)" class="btnStyles">+</button>
</div>
<div class="w-100 mt-2">
<div class="row">
<div class="w-50 ">
<button (click)="AddToCart(prod?.PRODUCT_CODE,prod?.UOM,prod?.qty, ind)"
class="col-sm-12 ProductButton p-0" mat-raised-button>Add To Cart</button>
</div>
<div class="w-50">
<button (click)="SelectedProduct(prod?.PRODUCT_CODE)" class="col-sm-12 ProductButton p-0"
mat-raised-button>More</button>
</div>
</div>
</div>
</mat-card>
</div>
</div>
</div>
</div>
<div class="col-sm-3">
<mat-card class="col-sm-12 p-0 mat-elevation-z10 YourCartheight">
<mat-card-header class="d-flex justify-content-center p-2" style="background-color: #0084FF;color: white;">
<mat-card-title class="mb-0">Your Cart</mat-card-title>
</mat-card-header>
<mat-card-content>
<div class="col-sm-12" *ngIf="!IsMyCartHasItems">
<div class="row">
<div class="col-sm-12 d-flex justify-content-center mt-4">
<img class="d-block w-100 emptycart p-1" src="../../../../../assets/cart.png" alt="No Data">
</div>
<div class="col-sm-12 pb-4 d-flex justify-content-center">
<span>There are no items in your cart.</span>
</div>
</div>
</div>
<div class="col-sm-12 p-2" *ngIf="IsMyCartHasItems">
<div class="row" *ngFor="let prod of MyCart; let i = index">
<div class="col-sm-4 p-2">
<div class="col-sm-12 p-2">
<span style="font-size: 12px;">{{prod.ITEM_DESC}}</span>
</div>
</div>
<div class="col-sm-4 p-0 d-flex justify-content-center">
<div class="col-sm-12 p-2 mt-2">
<button type="button" (click)="Decrementsub(prod?.ITEM_CODE,prod?.ITEM_PACK_SIZE,prod?.TOTAL_QTY,i)" class="cartBtn">–</button>
<input type="text" readonly class="quantityBox1" [value]="prod.TOTAL_QTY">
<button type="button" (click)="Incrementsub(prod?.ITEM_CODE,prod?.ITEM_PACK_SIZE,prod?.TOTAL_QTY,i)" class="cartBtn">+</button>
</div>
</div>
<div class="col-sm-2 p-0 d-flex justify-content-center">
<div class="col-sm-12 p-2 mt-2">
<span>{{prod?.TOTAL_AMT | number}} <span class="pl-1 Price"
[innerHtml]="mCurrencyCode"></span></span>
</div>
</div>
<div class="col-sm-2 p-0 d-flex justify-content-center">
<div class="col-sm-12 p-1">
<button matTooltip="Remove"
(click)="RemoveCartProduct(prod?.ITEM_CODE,prod?.ITEM_PACK_SIZE)" mat-icon-button
color="warn">
<mat-icon>delete</mat-icon>
</button>
</div>
</div>
</div>
<div class="col-sm-12 p-0 d-flex justify-content-center">
<button (click)='GoToCheckout()' class="col-sm-12 p-0 checkout" color="warn" mat-raised-button>CHECK
OUT <strong *ngIf='mCartCount > 0' class="pl-4" style="font-size: 20px;">{{TotalAmount | number}}<span class="pl-1 Price"
[innerHtml]="mCurrencyCode"></span></strong></button>
</div>
</div>
</mat-card-content>
</mat-card>
</div>
</div>
</div>
</div>
</div>
SCSS:
.Img{
height: 200px;
#include desktop{
height: 250px;
}
}
.Caption{
font-size: 1em;
font-weight: bold;
#include desktop{
font-size: 1.5em;
}
}
.ProductButton{
background-color: color(messengerBlue);
color: color(basic);
font-weight: bold;
font-size: 1em;
border-radius: 0;
margin-left: 10px;
}
.ProductData{
font-weight: lighter;
font-size: 12px !important;
white-space: normal;
word-wrap: break-word;
color: color(gray);
}
.containerbackground{
background-color:#f1f3f6;
}
.ActiveButton{
background-color: color(primary);
color: color(basic);
}
// Change text colour when inputting text
.search {
//-----Input Field Size----------
::ng-deep .mat-form-field-flex > .mat-form-field-infix {
padding: 0.4em 0px !important;
// padding-bottom: 8px !important;
}
::ng-deep .mat-form-field-label-wrapper {
top: -1.5em;
}
::ng-deep
.mat-form-field-appearance-outline.mat-form-field-can-float.mat-form-field-should-float
.mat-form-field-label {
transform: translateY(-1.1em) scale(0.75);
width: 133.33333%;
}
::ng-deep .mat-form-field {
background-color: white;
::ng-deep .mat-form-field-wrapper {
padding-bottom: 0;
}
::ng-deep .mat-form-field-wrapper {
margin: 0 0;
}
::ng-deep .mat-form-field-outline-start,
.mat-form-field-outline-end {
border-radius: 0 !important;
}
// ::ng-deep .mat-form-field-underline {
// height: 0px;
// }
// ::ng-deep .mat-form-field-infix {
// padding-top: 0px;
// position: relative;
// }
.mat-form-field-underline {
background-color: transparent;
}
.mat-form-field-ripple {
background-color: transparent;
}
}
}
.tree-invisible {
display: none;
}
.tree ul,
.tree li {
margin-top: 0;
margin-bottom: 0;
list-style-type: none;
cursor: pointer;
}
.mat-tree-node {
min-height: 0px;
max-height: 30px;
.TreeButton{
outline: none;
}
}
.Title{
font-size: 1.5em;
font-weight: bold;
}
.banner{
height: 250px;
}
.ImageDiv{
width: 40%;
}
.Img{
height: 130px;
#include desktop{
height: 150px;
}
}
.NameDiv{
width: 60%;
.Name{
width: 100%;
text-align: center;
font-weight: lighter;
font-size: 12px !important;
white-space: normal;
word-wrap: break-word;
color: color(gray);
}
.Price{
width: 100%;
font-weight: bold;
font-size: 1.5em;
color: color(primary);
text-align: center;
}
}
.imgButton{
background-color: color(messengerBlue);
color: color(basic);
font-weight: bold;
font-size: 1em;
border-radius: 0;
}
.btnStyles{
width: 28px;
height: 28px;
background: linear-gradient(#fff, #f9f9f9);
display: inline-block;
border: 1px solid #c2c2c2;
cursor: pointer;
font-size: 16px;
border-radius: 50%;
padding-top: 1px;
line-height: 1;
}
.cartBtn{
width: 20px;
height: 20px;
background: linear-gradient(#fff, #f9f9f9);
display: inline-block;
border: 1px solid #c2c2c2;
cursor: pointer;
font-size: 12px;
border-radius: 50%;
padding-top: 1px;
line-height: 1;
}
.quantityBox{
display: inline-block;
padding: 3px 6px;
width: calc(100% - 60px);
height: 100%;
width: 46px;
height: 28px;
border-radius: 2px;
background-color: #fff;
border: 1px solid #c2c2c2;
margin: 0 9px;
font-weight: bold;
text-align: center
}
.quantityBox1{
display: inline-block;
padding: 3px 6px;
width: calc(100% - 60px);
height: 100%;
width: 25px;
height: 20px;
border-radius: 2px;
background-color: #fff;
border: 1px solid #c2c2c2;
margin: 0 9px;
font-weight: bold;
text-align: center
}
.iconSize {
font-size: 30px;
}
.cursor {
cursor: pointer;
}
.ItemPromotionPrice {
display: inline-block;
text-decoration: line-through;
opacity: .5;
font-size: 20px !important;
color: color(gray);
}
.ProductPrice{
font-weight: bold;
font-size: 1em;
color: color(primary);
}
::ng-deep .mat-form-field {
font-size: 12px; // example
}
.emptycart{
height: 100px !important;
width: 100px !important;
}
.YourCartheight{
min-height: 150px!important;
max-height:500px !important;
}
I have a suggestion to use html:not
It should be looked like this:
html:not([data-scroll='0']) /*class name for category section*/ {
position: fixed;
top: 0;
}
In order to make the middle container's content scroll, it must first overflow. That can be achieved by applying either a fixed or max height. Then you need to specify the overflow behaviour:
.containerbackground {
background-color:#f1f3f6;
max-height: 100vh;
overflow-y: auto;
}

Bootstrap 4 full-width padding issue is causing a scrollbar and white space

I have a thin white line that is hard to see on the right side of my website. You can notice it if you scroll to the right on the webpage. Using DevTools it looks like it is 15px padding.
I am trying to remove this and I have tried to find the item that is causing this but I can't seem to find it. What could be causing the problem?
Image of white line:
Url of site: https://grobconnolly.github.io/cloverweb/
#import url(//fonts.googleapis.com/css?family=Montserrat:300,400,500);
.service-5 {
font-family: "Montserrat", sans-serif;
color: #636468;
font-weight: 300;
}
.service-5 h1,
.service-5 h2,
.service-5 h3,
.service-5 h4,
.service-5 h5,
.service-5 h6 {
color: #3e4555;
}
.service-5 a {
text-decoration: none;
}
.service-5 .linking {
color: #3e4555;
}
.service-5 .linking:hover {
color: #316ce8;
}
.service-5 .font-weight-medium {
font-weight: 500;
}
.service-5 .bg-light {
background-color: #f4f8fa !important;
}
.service-5 .subtitle {
color: #8d97ad;
line-height: 24px;
}
.service-5 .card.card-shadow {
-webkit-box-shadow: 0px 0px 30px rgba(115, 128, 157, 0.1);
box-shadow: 0px 0px 30px rgba(115, 128, 157, 0.1);
}
.service-5 .wrap-service5-box .card-body {
padding: 30px;
}
.service-5 .wrap-service5-box .text-success-gradiant {
background: #f47820;
background: -webkit-linear-gradient(legacy-direction(to right), #f47820 0%, #f47820 100%);
background: -webkit-gradient(linear, left top, right top, from(#f47820), to(#f47820));
background: -webkit-linear-gradient(left, #f47820 0%, #f47820 100%);
background: -o-linear-gradient(left, #f47820 0%, #f47820 100%);
background: linear-gradient(to right, #f47820 0%, #f47820 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
text-fill-color: transparent;
}
.service-5 .wrap-service5-box .icon-size {
font-size: 45px;
}
.service-5 .btn-md {
padding: 15px 45px;
font-size: 16px;
}
#textWhite {
color: white;
font-size: 25px;
}
.featureSection {
margin-top: 30px;
}
.ourFeatures {
margin-bottom: 50px;
}
* {
font-family: "Montserrat", sans-serif;
color: #636468;
}
.heroText {
font-weight: 900;
font-size: 50px;
color: #373E42;
padding-top: 4%;
padding-bottom: .3%;
}
#subHeroText {
font-size: 40px;
font-weight: 400;
color: #6b7175;
margin-top: 0px;
}
#setupText {
font-size: 22px;
color: rgb(107, 113, 117);
margin-bottom: 0.3em;
padding-top: 1em;
}
#heroButton {
font-size: 25px;
}
#cancelAnytime {
font-size: 22px;
color: rgb(107, 113, 117);
padding-bottom: 1em;
}
.mainSubjects {
font-weight: 400;
font-size: 28px;
padding-top: 1em;
padding-bottom: .2em;
}
.footer {
padding: 30px 0;
background: #eee !important;
width: 100%
}
.priceText {
font-size: 15px;
font-weight: 100;
}
.secondSection {
background-color: white;
width: 100%;
}
.extraPad {
padding-bottom: 4%;
}
.question1 {
border: 1px solid black;
}
.priceBox {
border-width: thin;
border-color: #E9EEF1;
border-style: solid;
padding-top: 3%;
}
.dollarSymbol,
.mo,
.amount {
padding-bottom: 4%;
}
#extraSpace {
padding-left: 100px;
padding-right: 100px;
}
.dollarSymbol {
font-size: 20px;
font-weight: 400;
}
.amount {
font-size: 60px;
font-weight: 900;
}
.mo {
padding-top: 3%;
padding-left: 3%;
}
.faq {
padding-top: 20px;
padding-bottom: 20px;
}
#priceIcons {
padding-left: 20%;
}
.iconFeatures {
padding-left: 0%;
}
.iconTextPrice {
padding-left: 3%;
font-size: 14px;
font-weight: 200;
padding-top: 1%;
}
.iconUs {
left: 27%;
padding-top: 3%;
padding-bottom: 4%;
}
.textIcon {
color: black;
font-weight: 200;
}
#heroButtonPricing {
font-size: 20px;
width: 300px;
}
li {
font-size: 12px;
justify-content: left;
}
.heroBottom {
background-color: white;
}
.heroSection {
background-color: #F8FBFC;
}
.liRight {
text-align: left;
margin-left: 3em;
}
.navbar {
background-color: #F8FBFC;
}
li.borderless {
border: 0 none;
padding-top: 0;
}
.subHeroTextBottom {
font-size: 12px;
color: rgb(107, 113, 117);
padding-top: 1px;
}
.mainSubjects {
font-weight: 400;
font-size: 28px;
padding-top: 1em;
padding-bottom: .2em;
}
.mainSubjectsWhy {
font-weight: 400;
font-size: 28px;
padding-top: 2em;
padding-bottom: .2em;
}
.mainSubjectsFaq {
font-weight: 400;
font-size: 28px;
padding-top: 8em;
padding-bottom: .2em;
}
.subjectHeader {
font-weight: 400;
font-weight: 100;
font-size: 18px;
padding-top: 0;
padding-bottom: .2em;
}
.readyToSignUp {
font-weight: 100;
font-size: 18px;
padding-top: 0;
margin-bottom: .1em;
}
.secondSubject {
padding-top: 15px;
}
.thirdTitle {
padding-top: 15px
}
.calButton {
padding-top: 400px;
}
.featureIconLeft1 {
left: 10%;
}
.featureTextLeft1 {
left: 6%;
}
.featureIconRight2 {
left: 5%;
}
.featureTextRight2 {
left: 1%;
}
.robpic {
width: 200px;
}
.name {
font-size: 10px;
padding-bottom: 0;
margin-bottom: 0px;
}
.title {
font-size: 8px;
padding-bottom: 2em;
}
.sectionSpace {
margin-top: 0px;
padding-top: 1.2em;
}
.backGround {
background-color: #F8FBFC;
width: 100%;
}
.tjFooterLogo {
max-width: 100px
}
#noBorder {
border: none;
width: 30%;
padding-top: 3%;
padding-bottom: 4%;
background-color: #F8FBFC;
}
.footerText {
font-size: 12px;
padding-bottom: .5em;
}
.fullWidth {
margin-right: 0px;
margin-left: 0px;
padding-right: 0px;
padding-left: 0px;
}
.footerLogo {
width: 50%;
padding-top: 8%;
padding-bottom: 4%;
}
.footerTextCopy {
font-style: normal;
color: rgb(107, 113, 117);
font-size: 10px;
}
.name {
font-size: 18px;
font-weight: 200;
}
.title {
font-size: 14px;
font-weight: 400;
}
#media only screen and (min-width: 980px) {
.mainSubjects,
.mainSubjectsWhy {
font-size: 32px;
}
.subjectContent {
font-size: 22px;
}
}
#media only screen and (min-width: 1224px) {
.heroText {
font-size: 64px;
padding-top: 4%;
padding-left: 20%;
padding-right: 20%;
}
.subHeroText {
font-size: 20px;
word-spacing: .2em;
}
.btn-primary {
width: 150px;
}
.mainSubjects {
font-size: 40px;
font-weight: 900;
}
.subjectContent {
font-size: 20px;
}
.name {
font-size: 20px;
font-weight: 400;
}
.title {
font-size: 15px;
font-weight: 200;
}
.footerLogo {
width: 20%;
margin-top: 0;
padding-top: 2em;
padding-bottom: 10px;
}
.footerText {
font-size: 15px;
}
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" type="text/css" href="style.css">
<link href="https://fonts.googleapis.com/css2?family=Overpass:wght#200;400;900&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
<link href="/open-iconic/font/css/open-iconic-bootstrap.css" rel="stylesheet">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.14.0/css/all.css" integrity="sha384-HzLeBuhoNPvSl5KYnjx0BT+WB0QEEqLprO+NBkkk5gbc67FTaL7XIGa2w1L0Xbgc" crossorigin="anonymous">
<title>Clover Networks and TextJet Loyalty</title>
</head>
<body>
<nav class="navbar navbar-expand-md navbar-light">
<a href="./index.html" class="navbar-brand">
<img src="./assets/images/TextJet.png" height="28" alt="CoolBrand">
</a>
<button type="button" class="navbar-toggler" data-toggle="collapse" data-target="#navbarCollapse">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarCollapse">
<div class="navbar-nav">
What is TextJet?
FAQ
Pricing
</div>
<div class="navbar-nav ml-auto">
Sign Up
Login
</div>
</div>
</nav>
<div class="container-flex heroSection">
<div class="row">
<div class="col-12">
<h1 class='heroText text-center'>Powerful loyalty software for small businesses!
</h1>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
<h2 id="subHeroText">Now available on Clover Networks!
</h2>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
<div id="setupText">Get set-up in minutes. </h3>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
Sign Up
<div class="row">
<div id="cancelAnytime" class="col-12 text-center">No commitment. Cancel anytime.</div>
</div>
<img class="img-fluid" src="./assets/images/hero-image.png" alt="TextJet Hero images">
<img class="img-fluid heroBottom" src="./assets/images/hero-bottom.png" alt="img for bottom">
</div>
</div>
</div>
</div>
<div class="container secondSection">
<div class="row">
<div class="col-xs-12 col-sm-6">
<a id="whatIsTextJet"></a>
<h3 class="mainSubjects">Powerful Loyalty</h3>
<p class="subjectContent">Streamline your loyalty platform to maximize your reach. TextJet helps you turn occasional customers into loyal fans. We have spent countless hours designed and developing a system that will give you the upper hand over your competition. Not sure
if TextJet is right for you... schedule a demo and find out why hundreds of businesses rely on TextJet. </p>
</div>
<div class="col-xs-12 col-sm-6">
<img class="img-fluid" src="./assets/images/happy-customer1.png" alt="Happy Customer">
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6">
<img class="img-fluid" src="./assets/images/happy-customer2.png" alt="Happy Customer">
</div>
<div class="col-xs-12 col-sm-6">
<h3 class="mainSubjects">Marketing Autopilot</h3>
<p class="subjectContent">We know running a business can be time restraining. With TextJet Marketing Autopilot we provide a powerful marketing suite without little to no effort on your part! After you set-up your account with one of our Customer Support Representatives,
everything will be in place for you to see results with TextJet! </p>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6">
<h3 class="mainSubjects">Retention Plus</h3>
<p class="subjectContent">TextJet retention plus is a really cool tool we built to help you keep your customers coming back. Let's pretend Suzy comes into your store today, but you don't see her for 30+ days. TextJet retention starts to go to work for you. Our tools help
entice Suzy to come back to your store. It's really an amazing tool for your business!
</p>
</div>
<div class="col-xs-12 col-sm-6">
<img class="img-fluid" src="./assets/images/happy-customer3.png" alt="Happy Customer">
</div>
</div>
</div>
<!-- Features-->
<div class="bg-light py-5 service-5 featureSection">
<div class="container">
<!-- Row -->
<div class="row">
<!-- Column -->
<div class="col-12 text-center">
<p class="mainSubjects ourFeatures">Our Features</p>
</div>
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-comment"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">Rich
Messaging</a></h6>
<p class="mt-3">Send beautiful images or videos directly to your customers' cell phones.
</p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="fab fa-medapps"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">Retention
Plus</a></h6>
<p class="mt-3">TextJet tracks how long it's been since a customer has been to your store. We set-up triggers to bring them back to your store. </p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-paper-plane"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">Handsfree
Marketing</a></h6>
<p class="mt-3">TextJet is an easy to use marketing solution built for small businesses. It takes about 4 minutes to set-up and your account will be ready to go.</p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-chart-bar"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">Analytics &
Tracking
</a></h6>
<p class="mt-3">We have reporting in place so you can see how your account is performing. We want you to see the value of TextJet!</p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-object-group"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">2-Way
Messaging</a></h6>
<p class="mt-3">You can have a 2-way conversation with your customers using TextJet. This is a great customer service tool.</p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-gem"></i></div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">SmartPulse
(coming soon)</a></h6>
<p class="mt-3">Find out how your customers feel about your store. Resolve issues and keep your customers happy</p>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
<div id="setupText">Get set-up in minutes. </h3>
</div>
<div class="row">
<div class="col-12 text-center">
<a href="#pricingSection" id="heroButton" class="btn btn-primary">Sign
Up</a>
<div class="row">
<div id="cancelAnytime" class="col-12 text-center">No commitment. Cancel anytime.
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- End Features-->
<!-- Pricing -->
<div class="container-flex sectionSpace bg-white">
<div class="row">
<div class="pricing-header px-3 py-3 pt-md-5 pb-md-4 mx-auto text-center">
<a id="pricingSection"></a>
<h1 class="mainSubjects">Pricing</h1>
<p class="subHeroText">Our plans are designed to grow with you! No contracts, no set-up fees, and awesome customer support is included in all packages. </p>
</div>
<div class="container">
<div class="card-deck mb-3 text-center">
<div class="card mb-4 shadow-sm">
<div class="card-header">
<h4 class="my-0 font-weight-normal">Starter Plan</h4>
</div>
<div class="card-body">
<h1 class="card-title pricing-card-title">$1 <small class="text-muted">/
mo</small></h1>
<ul class="list-unstyled mt-3 mb-4 priceText">
<li class="priceText">Points Rewards</li>
<li class="priceText">Custom Branding</li>
<li class="priceText">Handsfree Markting</li>
<li class="priceText">Fraud Protection</li>
<li class="priceText">Promo Text Messaging</li>
<li class="priceText">2-way Messaging</li>
<li class="priceText">Reporting</li>
<li class="priceText">50 SMS/ Month</li>
</ul>
<button type="button" class="btn btn-lg btn-block btn-primary">Get
started</button>
</div>
</div>
<div class="card mb-4 shadow-sm">
<div class="card-header">
<h4 class="my-0 font-weight-normal">Business Plan</h4>
</div>
<div class="card-body">
<h1 class="card-title pricing-card-title">$39 <small class="text-muted">/
mo</small></h1>
<ul class="list-unstyled mt-3 mb-4 priceText">
<li class="priceText">Points Rewards</li>
<li class="priceText">Custom Branding</li>
<li class="priceText">Handsfree Markting</li>
<li class="priceText">Fraud Protection</li>
<li class="priceText">Promo Text Messaging</li>
<li class="priceText">2-way Messaging</li>
<li class="priceText">Reporting</li>
<li class="priceText">1000 SMS/ Month</li>
</ul>
<button type="button" class="btn btn-lg btn-block btn-primary">Get
started</button>
</div>
</div>
<div class="card mb-4 shadow-sm">
<div class="card-header">
<h4 class="my-0 font-weight-normal">Pro Plan</h4>
</div>
<div class="card-body">
<h1 class="card-title pricing-card-title">$89 <small class="text-muted">/
mo</small></h1>
<ul class="list-unstyled mt-3 mb-4">
<li class="priceText">Points Rewards</li>
<li class="priceText">Custom Branding</li>
<li class="priceText">Handsfree Markting</li>
<li class="priceText">Fraud Protection</li>
<li class="priceText">Promo Text Messaging</li>
<li class="priceText">2-way Messaging</li>
<li class="priceText">Reporting</li>
<li class="priceText">5000 SMS/ Month</li>
</ul>
<button type="button" class="btn btn-lg btn-block btn-primary">Get
Started</button>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-12">
<h3 class="mainSubjects text-center">Ready to see the TextJet difference?</h4>
<p class='subHeroText text-center'>We are here to help you grow your business!
</h2>
<div class="row">
<div class="col-12 text-center">
<div id="setupText">Get set-up in 15 minutes.
</div>
<div class="row">
<div class="col-12 text-center">
<a href="#pricingSection" id="heroButton" class="btn btn-primary">Sign
Up</a>
<div class="row">
<div id="cancelAnytime" class="col-12 text-center">No commitment, Cancel anytime.
</div>
</div>
</div>
</div>
</div>
<div class="container-flex footer">
<div class="row">
<div class="col-4 text-center">
<img class="footerLogo" src="./assets/images/textjet_fitted.png" alt="textjet logo" />
</div>
<div class="col-4">
<div class="col-12 text-center footerText">Pricing</div>
<div class="col-12 text-center footerText">FAQ</div>
<div class="col-12 text-center footerText">Contact Support</div>
</div>
<div class="col-4">
<div class="col-12 text-center footerText">Privacy Policy</div>
<div class="col-12 text-center footerText">Terms of Service</div>
<div class="col-12 text-center footerText">Anti-Spam Policy</div>
</div>
</div>
<div class="row">
<div class="col-12 text-center footerTextCopy">
© Copyright 2020 Textjet LLC
</div>
</div>
</body>
</html>
The problem is that you have Bootstrap row classes that are not inside a Bootstrap container class.
You are using the class container-flex which isn't a Bootstrap class - I assume you meant to use container-fluid (which is a Bootstrap class)? e.g.
<div class="container-flex heroSection">
<div class="row">
<div class="col-12">
<h1 class='heroText text-center'>Powerful loyalty software for small businesses!
</h1>
</div>
</div>
</div>
The reason this is causing a problem: is because Bootstrap container classes add 15px padding left and right, and the row class has -15px margin to remove this (i.e. it extends the row by 30px) and make the row full width. If the row is not inside a Bootstrap container class, the 30px is being added to the width and causing the scrollbar and whitespace you see.
Working Code
#import url(//fonts.googleapis.com/css?family=Montserrat:300,400,500);
.service-5 {
font-family: "Montserrat", sans-serif;
color: #636468;
font-weight: 300;
}
.service-5 h1,
.service-5 h2,
.service-5 h3,
.service-5 h4,
.service-5 h5,
.service-5 h6 {
color: #3e4555;
}
.service-5 a {
text-decoration: none;
}
.service-5 .linking {
color: #3e4555;
}
.service-5 .linking:hover {
color: #316ce8;
}
.service-5 .font-weight-medium {
font-weight: 500;
}
.service-5 .bg-light {
background-color: #f4f8fa !important;
}
.service-5 .subtitle {
color: #8d97ad;
line-height: 24px;
}
.service-5 .card.card-shadow {
-webkit-box-shadow: 0px 0px 30px rgba(115, 128, 157, 0.1);
box-shadow: 0px 0px 30px rgba(115, 128, 157, 0.1);
}
.service-5 .wrap-service5-box .card-body {
padding: 30px;
}
.service-5 .wrap-service5-box .text-success-gradiant {
background: #f47820;
background: -webkit-linear-gradient(legacy-direction(to right), #f47820 0%, #f47820 100%);
background: -webkit-gradient(linear, left top, right top, from(#f47820), to(#f47820));
background: -webkit-linear-gradient(left, #f47820 0%, #f47820 100%);
background: -o-linear-gradient(left, #f47820 0%, #f47820 100%);
background: linear-gradient(to right, #f47820 0%, #f47820 100%);
-webkit-background-clip: text;
background-clip: text;
-webkit-text-fill-color: transparent;
text-fill-color: transparent;
}
.service-5 .wrap-service5-box .icon-size {
font-size: 45px;
}
.service-5 .btn-md {
padding: 15px 45px;
font-size: 16px;
}
#textWhite {
color: white;
font-size: 25px;
}
.featureSection {
margin-top: 30px;
}
.ourFeatures {
margin-bottom: 50px;
}
* {
font-family: "Montserrat", sans-serif;
color: #636468;
}
.heroText {
font-weight: 900;
font-size: 50px;
color: #373E42;
padding-top: 4%;
padding-bottom: .3%;
}
#subHeroText {
font-size: 40px;
font-weight: 400;
color: #6b7175;
margin-top: 0px;
}
#setupText {
font-size: 22px;
color: rgb(107, 113, 117);
margin-bottom: 0.3em;
padding-top: 1em;
}
#heroButton {
font-size: 25px;
}
#cancelAnytime {
font-size: 22px;
color: rgb(107, 113, 117);
padding-bottom: 1em;
}
.mainSubjects {
font-weight: 400;
font-size: 28px;
padding-top: 1em;
padding-bottom: .2em;
}
.footer {
padding: 30px 0;
background: #eee !important;
width: 100%
}
.priceText {
font-size: 15px;
font-weight: 100;
}
.secondSection {
background-color: white;
width: 100%;
}
.extraPad {
padding-bottom: 4%;
}
.question1 {
border: 1px solid black;
}
.priceBox {
border-width: thin;
border-color: #E9EEF1;
border-style: solid;
padding-top: 3%;
}
.dollarSymbol,
.mo,
.amount {
padding-bottom: 4%;
}
#extraSpace {
padding-left: 100px;
padding-right: 100px;
}
.dollarSymbol {
font-size: 20px;
font-weight: 400;
}
.amount {
font-size: 60px;
font-weight: 900;
}
.mo {
padding-top: 3%;
padding-left: 3%;
}
.faq {
padding-top: 20px;
padding-bottom: 20px;
}
#priceIcons {
padding-left: 20%;
}
.iconFeatures {
padding-left: 0%;
}
.iconTextPrice {
padding-left: 3%;
font-size: 14px;
font-weight: 200;
padding-top: 1%;
}
.iconUs {
left: 27%;
padding-top: 3%;
padding-bottom: 4%;
}
.textIcon {
color: black;
font-weight: 200;
}
#heroButtonPricing {
font-size: 20px;
width: 300px;
}
li {
font-size: 12px;
justify-content: left;
}
.heroBottom {
background-color: white;
}
.heroSection {
background-color: #F8FBFC;
}
.liRight {
text-align: left;
margin-left: 3em;
}
.navbar {
background-color: #F8FBFC;
}
li.borderless {
border: 0 none;
padding-top: 0;
}
.subHeroTextBottom {
font-size: 12px;
color: rgb(107, 113, 117);
padding-top: 1px;
}
.mainSubjects {
font-weight: 400;
font-size: 28px;
padding-top: 1em;
padding-bottom: .2em;
}
.mainSubjectsWhy {
font-weight: 400;
font-size: 28px;
padding-top: 2em;
padding-bottom: .2em;
}
.mainSubjectsFaq {
font-weight: 400;
font-size: 28px;
padding-top: 8em;
padding-bottom: .2em;
}
.subjectHeader {
font-weight: 400;
font-weight: 100;
font-size: 18px;
padding-top: 0;
padding-bottom: .2em;
}
.readyToSignUp {
font-weight: 100;
font-size: 18px;
padding-top: 0;
margin-bottom: .1em;
}
.secondSubject {
padding-top: 15px;
}
.thirdTitle {
padding-top: 15px
}
.calButton {
padding-top: 400px;
}
.featureIconLeft1 {
left: 10%;
}
.featureTextLeft1 {
left: 6%;
}
.featureIconRight2 {
left: 5%;
}
.featureTextRight2 {
left: 1%;
}
.robpic {
width: 200px;
}
.name {
font-size: 10px;
padding-bottom: 0;
margin-bottom: 0px;
}
.title {
font-size: 8px;
padding-bottom: 2em;
}
.sectionSpace {
margin-top: 0px;
padding-top: 1.2em;
}
.backGround {
background-color: #F8FBFC;
width: 100%;
}
.tjFooterLogo {
max-width: 100px
}
#noBorder {
border: none;
width: 30%;
padding-top: 3%;
padding-bottom: 4%;
background-color: #F8FBFC;
}
.footerText {
font-size: 12px;
padding-bottom: .5em;
}
.fullWidth {
margin-right: 0px;
margin-left: 0px;
padding-right: 0px;
padding-left: 0px;
}
.footerLogo {
width: 50%;
padding-top: 8%;
padding-bottom: 4%;
}
.footerTextCopy {
font-style: normal;
color: rgb(107, 113, 117);
font-size: 10px;
}
.name {
font-size: 18px;
font-weight: 200;
}
.title {
font-size: 14px;
font-weight: 400;
}
#media only screen and (min-width: 980px) {
.mainSubjects,
.mainSubjectsWhy {
font-size: 32px;
}
.subjectContent {
font-size: 22px;
}
}
#media only screen and (min-width: 1224px) {
.heroText {
font-size: 64px;
padding-top: 4%;
padding-left: 20%;
padding-right: 20%;
}
.subHeroText {
font-size: 20px;
word-spacing: .2em;
}
.btn-primary {
width: 150px;
}
.mainSubjects {
font-size: 40px;
font-weight: 900;
}
.subjectContent {
font-size: 20px;
}
.name {
font-size: 20px;
font-weight: 400;
}
.title {
font-size: 15px;
font-weight: 200;
}
.footerLogo {
width: 20%;
margin-top: 0;
padding-top: 2em;
padding-bottom: 10px;
}
.footerText {
font-size: 15px;
}
}
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<link rel="stylesheet" type="text/css" href="style.css">
<link href="https://fonts.googleapis.com/css2?family=Overpass:wght#200;400;900&display=swap" rel="stylesheet">
<link rel="stylesheet" href="https://stackpath.bootstrapcdn.com/bootstrap/4.5.2/css/bootstrap.min.css" integrity="sha384-JcKb8q3iqJ61gNV9KGb8thSsNjpSL0n8PARn9HuZOnIxN0hoP+VmmDGMN5t9UJ0Z" crossorigin="anonymous">
<link href="/open-iconic/font/css/open-iconic-bootstrap.css" rel="stylesheet">
<link rel="stylesheet" href="https://use.fontawesome.com/releases/v5.14.0/css/all.css" integrity="sha384-HzLeBuhoNPvSl5KYnjx0BT+WB0QEEqLprO+NBkkk5gbc67FTaL7XIGa2w1L0Xbgc" crossorigin="anonymous">
<title>Clover Networks and TextJet Loyalty</title>
</head>
<body>
<nav class="navbar navbar-expand-md navbar-light">
<a href="./index.html" class="navbar-brand">
<img src="./assets/images/TextJet.png" height="28" alt="CoolBrand">
</a>
<button type="button" class="navbar-toggler" data-toggle="collapse" data-target="#navbarCollapse">
<span class="navbar-toggler-icon"></span>
</button>
<div class="collapse navbar-collapse" id="navbarCollapse">
<div class="navbar-nav">
What is TextJet?
FAQ
Pricing
</div>
<div class="navbar-nav ml-auto">
Sign Up
Login
</div>
</div>
</nav>
<div class="container-fluid heroSection">
<div class="row">
<div class="col-12">
<h1 class='heroText text-center'>Powerful loyalty software for small businesses!
</h1>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
<h2 id="subHeroText">Now available on Clover Networks!
</h2>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
<div id="setupText">Get set-up in minutes. </h3>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
Sign Up
<div class="row">
<div id="cancelAnytime" class="col-12 text-center">No commitment. Cancel anytime.</div>
</div>
<img class="img-fluid" src="./assets/images/hero-image.png" alt="TextJet Hero images">
<img class="img-fluid heroBottom" src="./assets/images/hero-bottom.png" alt="img for bottom">
</div>
</div>
</div>
</div>
<div class="container secondSection">
<div class="row">
<div class="col-xs-12 col-sm-6">
<a id="whatIsTextJet"></a>
<h3 class="mainSubjects">Powerful Loyalty</h3>
<p class="subjectContent">Streamline your loyalty platform to maximize your reach. TextJet helps you turn occasional customers into loyal fans. We have spent countless hours designed and developing a system that will give you the upper hand over your competition. Not sure
if TextJet is right for you... schedule a demo and find out why hundreds of businesses rely on TextJet. </p>
</div>
<div class="col-xs-12 col-sm-6">
<img class="img-fluid" src="./assets/images/happy-customer1.png" alt="Happy Customer">
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6">
<img class="img-fluid" src="./assets/images/happy-customer2.png" alt="Happy Customer">
</div>
<div class="col-xs-12 col-sm-6">
<h3 class="mainSubjects">Marketing Autopilot</h3>
<p class="subjectContent">We know running a business can be time restraining. With TextJet Marketing Autopilot we provide a powerful marketing suite without little to no effort on your part! After you set-up your account with one of our Customer Support Representatives,
everything will be in place for you to see results with TextJet! </p>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-6">
<h3 class="mainSubjects">Retention Plus</h3>
<p class="subjectContent">TextJet retention plus is a really cool tool we built to help you keep your customers coming back. Let's pretend Suzy comes into your store today, but you don't see her for 30+ days. TextJet retention starts to go to work for you. Our tools help
entice Suzy to come back to your store. It's really an amazing tool for your business!
</p>
</div>
<div class="col-xs-12 col-sm-6">
<img class="img-fluid" src="./assets/images/happy-customer3.png" alt="Happy Customer">
</div>
</div>
</div>
<!-- Features-->
<div class="bg-light py-5 service-5 featureSection">
<div class="container">
<!-- Row -->
<div class="row">
<!-- Column -->
<div class="col-12 text-center">
<p class="mainSubjects ourFeatures">Our Features</p>
</div>
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-comment"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">Rich
Messaging</a></h6>
<p class="mt-3">Send beautiful images or videos directly to your customers' cell phones.
</p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="fab fa-medapps"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">Retention
Plus</a></h6>
<p class="mt-3">TextJet tracks how long it's been since a customer has been to your store. We set-up triggers to bring them back to your store. </p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-paper-plane"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">Handsfree
Marketing</a></h6>
<p class="mt-3">TextJet is an easy to use marketing solution built for small businesses. It takes about 4 minutes to set-up and your account will be ready to go.</p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-chart-bar"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">Analytics &
Tracking
</a></h6>
<p class="mt-3">We have reporting in place so you can see how your account is performing. We want you to see the value of TextJet!</p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-object-group"></i>
</div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">2-Way
Messaging</a></h6>
<p class="mt-3">You can have a 2-way conversation with your customers using TextJet. This is a great customer service tool.</p>
</div>
</div>
</div>
</div>
<!-- Column -->
<!-- Column -->
<div class="col-md-4 wrap-service5-box">
<div class="card card-shadow border-0 mb-4">
<div class="card-body d-flex">
<div class="mr-4 mb-2 text-success-gradiant icon-size"><i class="far fa-gem"></i></div>
<div class="">
<h6 class="font-weight-medium"><a href="javascript:void(0)" class="linking">SmartPulse
(coming soon)</a></h6>
<p class="mt-3">Find out how your customers feel about your store. Resolve issues and keep your customers happy</p>
</div>
</div>
</div>
</div>
</div>
<div class="row">
<div class="col-12 text-center">
<div id="setupText">Get set-up in minutes. </h3>
</div>
<div class="row">
<div class="col-12 text-center">
<a href="#pricingSection" id="heroButton" class="btn btn-primary">Sign
Up</a>
<div class="row">
<div id="cancelAnytime" class="col-12 text-center">No commitment. Cancel anytime.
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- End Features-->
<!-- Pricing -->
<div class="container-fluid sectionSpace bg-white">
<div class="row">
<div class="pricing-header px-3 py-3 pt-md-5 pb-md-4 mx-auto text-center">
<a id="pricingSection"></a>
<h1 class="mainSubjects">Pricing</h1>
<p class="subHeroText">Our plans are designed to grow with you! No contracts, no set-up fees, and awesome customer support is included in all packages. </p>
</div>
<div class="container">
<div class="card-deck mb-3 text-center">
<div class="card mb-4 shadow-sm">
<div class="card-header">
<h4 class="my-0 font-weight-normal">Starter Plan</h4>
</div>
<div class="card-body">
<h1 class="card-title pricing-card-title">$1 <small class="text-muted">/
mo</small></h1>
<ul class="list-unstyled mt-3 mb-4 priceText">
<li class="priceText">Points Rewards</li>
<li class="priceText">Custom Branding</li>
<li class="priceText">Handsfree Markting</li>
<li class="priceText">Fraud Protection</li>
<li class="priceText">Promo Text Messaging</li>
<li class="priceText">2-way Messaging</li>
<li class="priceText">Reporting</li>
<li class="priceText">50 SMS/ Month</li>
</ul>
<button type="button" class="btn btn-lg btn-block btn-primary">Get
started</button>
</div>
</div>
<div class="card mb-4 shadow-sm">
<div class="card-header">
<h4 class="my-0 font-weight-normal">Business Plan</h4>
</div>
<div class="card-body">
<h1 class="card-title pricing-card-title">$39 <small class="text-muted">/
mo</small></h1>
<ul class="list-unstyled mt-3 mb-4 priceText">
<li class="priceText">Points Rewards</li>
<li class="priceText">Custom Branding</li>
<li class="priceText">Handsfree Markting</li>
<li class="priceText">Fraud Protection</li>
<li class="priceText">Promo Text Messaging</li>
<li class="priceText">2-way Messaging</li>
<li class="priceText">Reporting</li>
<li class="priceText">1000 SMS/ Month</li>
</ul>
<button type="button" class="btn btn-lg btn-block btn-primary">Get
started</button>
</div>
</div>
<div class="card mb-4 shadow-sm">
<div class="card-header">
<h4 class="my-0 font-weight-normal">Pro Plan</h4>
</div>
<div class="card-body">
<h1 class="card-title pricing-card-title">$89 <small class="text-muted">/
mo</small></h1>
<ul class="list-unstyled mt-3 mb-4">
<li class="priceText">Points Rewards</li>
<li class="priceText">Custom Branding</li>
<li class="priceText">Handsfree Markting</li>
<li class="priceText">Fraud Protection</li>
<li class="priceText">Promo Text Messaging</li>
<li class="priceText">2-way Messaging</li>
<li class="priceText">Reporting</li>
<li class="priceText">5000 SMS/ Month</li>
</ul>
<button type="button" class="btn btn-lg btn-block btn-primary">Get
Started</button>
</div>
</div>
</div>
</section>
</div>
</div>
</div>
<div class="container">
<div class="row">
<div class="col-12">
<h3 class="mainSubjects text-center">Ready to see the TextJet difference?</h4>
<p class='subHeroText text-center'>We are here to help you grow your business!
</h2>
<div class="row">
<div class="col-12 text-center">
<div id="setupText">Get set-up in 15 minutes.
</div>
<div class="row">
<div class="col-12 text-center">
<a href="#pricingSection" id="heroButton" class="btn btn-primary">Sign
Up</a>
<div class="row">
<div id="cancelAnytime" class="col-12 text-center">No commitment, Cancel anytime.
</div>
</div>
</div>
</div>
</div>
<div class="container-fluid footer">
<div class="row">
<div class="col-4 text-center">
<img class="footerLogo" src="./assets/images/textjet_fitted.png" alt="textjet logo" />
</div>
<div class="col-4">
<div class="col-12 text-center footerText">Pricing</div>
<div class="col-12 text-center footerText">FAQ</div>
<div class="col-12 text-center footerText">Contact Support</div>
</div>
<div class="col-4">
<div class="col-12 text-center footerText">Privacy Policy</div>
<div class="col-12 text-center footerText">Terms of Service</div>
<div class="col-12 text-center footerText">Anti-Spam Policy</div>
</div>
</div>
<div class="row">
<div class="col-12 text-center footerTextCopy">
© Copyright 2020 Textjet LLC
</div>
</div>
</body>
</html>

When I Zoom the page or Giving more text , Text is coming out of the box and Image icons are not properly Aligned

When I Zoom the page Giving more text , Text is coming out of the box and Image icons are moving out.I am putting two screen shots, 1st Image is what I am getting the output after coding the below code and
2nd Image is excepted output
Please help me in this Thanks in advance
This is Css code,When I Zoom the page, Text is coming out of the box and Image icons are moving out.
.flex-container{
display: flex;
overflow-x:auto;
}
.officeflex{
margin: 10px;
padding: 20px;
}
hr {
display: block;
height: 1px;
border: 0;
border-top: 1px solid #ccc;
margin: 1em 0;
padding: 0;
}
.d-flex.align-items-start.summary {
display: flex;
flex-direction: row;
justify-content:space-between;
margin:auto;
max-width:1170px;
width:100%;
}
.align-items-center{
.size{
font-size: 12px;
}
}
.office-address-heading{
.Address{
color:grey;
font-size: 12px;
}
}
.office-address-details{
.mr-2{
color: rgb(0, 195, 255); font-size: 20px
}
}
.profile-details{
margin-left:15px;
padding:40px;
.name{
font-size:12px;
line-height:22px;
font-weight: 500;
}
.designation{
font-size:12px;
line-height:25px;
font-weight: 400;
}
.phone{
font-size:12px;
font-weight: 100;
}
}
.btn{
font-size: 12px !important;
background-color: #0076C8;
color: #FFFFFF;
}
This is HTML code,When I Zoom the page, Text is coming out of the box and Image icons are moving out.
<div class="row">
<div class="col-sm-12">
<div class="profile-summary">
<b>Profile summary</b>
</div>
<div class="d-flex align-items-start summary1" style="margin-bottom: 10px;background-color: #fff;">
<app-image [imagesrc]="imagePath" style="width: 150px;max-height: 150px;clip-path: square(22px at center);"
class="col-2 mr-3 d-none d-sm-block" alt="..."></app-image>
<i (click)="inputFile.click()" style="color : white;left: 165px;
position: absolute; top: 28px; padding: 3px; background-color: rgb(0, 195, 255);
border-radius: 50%;font-size: 12px;"
class="fa fa-pencil fa-lg" aria-hidden="true"></i>
<div class="col-5 profile-details">
<div class="col-sm">
<span class="name">
<b style = "color: rgb(25,25,112); font-size : 15px ">{{myprofile?.FirstName}} {{myprofile?.LastName}}</b>
</span>
</div>
<div class="col-sm">
<span class="name">
<p>{{myprofile?.Role}} </p>
</span>
</div>
<div class="col-sm">
<span class="name">
<p>{{myprofile?.Phone}} {{myprofile?.UserName}}</p>
</span>
</div>
</div>
<div>
<div class="col-12 ">
<div class="office-address-heading">
<p class="Address">Office Address</p>
</div>
<div class="d-flex align-items-center">
<!-- <i style="color:grey;" class="fa fa-map-marker fa-2x mr-2" aria-hidden="true"></i> -->
<address class="mb-0 size">
{{myprofile?.OfficeAddress}}
</address>
</div>
</div>
<hr />
<div class="col-sm">
<div class="office-address-heading">
<p class="Address">Communication Details</p>
</div>
<div class="d-flex align-items-center office-address-details">
<i class="fa fa-phone fa-2x mr-2" aria-hidden="true"></i>
<div><a style="color: black;" href="tel:1-562-867-5309">{{myprofile?.Phone}}</a></div>
<span class="d-flex align-items-center mail office-address-details">
<i class="fa fa-envelope fa-2x mr-2" aria-hidden="true"></i>
<div>
<a style="color: black;" href="mailto:rafael.cepeda#lpl.com">{{myprofile?.Email}}</a>
</div>
</span>
</div>
</div>
</div>
</div>
</div>
</div>
[1]: https://i.stack.imgur.com/qc2ci.png
[2]: https://i.stack.imgur.com/ZYK1a.png
for the image and the icon take an outer div to your image and the icon. and apply this css to them .
.outer-div-for-the-imgae-icon{position:relative; display:block; height:300px; width:300px; }
.outer-div-for-the-imgae-icon img{height:100%; width:100%; object-fit:cover;}
.outer-div-for-the-imgae-icon i{position:absolute; top:0; left:100%; font-size:40px; color:green; }
<head><link rel="stylesheet" href="https://cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css"></head>
<div class="outer-div-for-the-imgae-icon">
<img src="https://images.pexels.com/photos/220453/pexels-photo-220453.jpeg?auto=compress&cs=tinysrgb&h=650&w=940"/>
<i class="fa fa-check-circle-o" aria-hidden="true"></i>
</div>