Home > other >  How to dynamically change size of html container?
How to dynamically change size of html container?

Time:01-18

I have a container div that is a background that changes size dynamically with the window. Inside that container I have an image div that I want to change size with the background container. I can't seem to get it to resize dynamically even using percentage heights and widths. Can anyone guide me in the correct direction? This is the way the page looks at full screen

@import url("https://fonts.googleapis.com/css?family=Fira Sans:400,500,600,700,800");
* {
  box-sizing: border-box;
}

body {
  background-color: #af39fe;
  background-image: linear-gradient(147deg, #af39fe 0%, #4c38fd 74%);
  min-height: 100vh;
  font-family: "Fira Sans", sans-serif;
  display: flex;
}

.info-container {
  width: 95%;
  position: relative;
  max-width: 800px;
  margin: auto;
  background: #fff;
  box-shadow: 0px 14px 80px rgba(34, 35, 58, 0.2);
  padding: 25px;
  border-radius: 10px;
  height: auto;
}

.info-container__img {
  width: 400px;
  flex-shrink: 0;
  height: 400px;
  background-image: linear-gradient(147deg, #af39fe 0%, #4c38fd 74%);
  box-shadow: 4px 13px 30px 1px rgba(252, 56, 56, 0.2);
  border-radius: 10px;
  transform: translateX(-80px);
  overflow: hidden;
}

.info-container__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 100;
  border-radius: 10px;
}

.info-container__content {
  padding-right: 25px;
}

.info-container__content>* {
  opacity: 100;
}

.info-container__title {
  font-size: 24px;
  font-weight: 700;
  color: #0d0925;
  margin-bottom: 20px;
}

.info-container__text {
  color: #4e4a67;
  margin-bottom: 30px;
  line-height: 1.5em;
}

.info-container__button {
  display: inline-flex;
  background-image: linear-gradient(147deg, #5b0a6b 0%, #16034b 74%);
  padding: 15px 35px;
  border-radius: 50px;
  color: #fff;
  box-shadow: 0px 14px 80px rgba(0, 0, 0, 0.4);
  text-decoration: none;
  font-weight: 500;
  justify-content: center;
  text-align: center;
  letter-spacing: 1px;
}
<div >
  <div >
    <img src="https://www.dmarge.com/wp-content/uploads/2021/01/dwayne-the-rock-.jpg">
  </div>
  <div >
    <div >About Me</div>
    <div >This is fake info about a persons life.</div>
    <a href="About.html" >READ MORE</a>
  </div>
</div>

CodePudding user response:

You set .info-container__img's width using pixels. Change that to percentages and it would act as you want. I set max-width: 400px and change width: 50% in respect to container's style.

@import url("https://fonts.googleapis.com/css?family=Fira Sans:400,500,600,700,800");
* {
  box-sizing: border-box;
}

body {
  background-color: #af39fe;
  background-image: linear-gradient(147deg, #af39fe 0%, #4c38fd 74%);
  min-height: 100vh;
  font-family: "Fira Sans", sans-serif;
  display: flex;
}

.info-container {
  width: 95%;
  position: relative;
  max-width: 800px;
  margin: auto;
  background: #fff;
  box-shadow: 0px 14px 80px rgba(34, 35, 58, 0.2);
  padding: 25px;
  border-radius: 10px;
  height: auto;
}

.info-container__img {
  width: 50%;
  max-width: 400px;
  flex-shrink: 0;
  height: auto;
  background-image: linear-gradient(147deg, #af39fe 0%, #4c38fd 74%);
  box-shadow: 4px 13px 30px 1px rgba(252, 56, 56, 0.2);
  border-radius: 10px;
  transform: translateX(-80px);
  overflow: hidden;
}

.info-container__img img {
  width: 100%;
  height: 100%;
  object-fit: cover;
  display: block;
  opacity: 100;
  border-radius: 10px;
}

.info-container__content {
  padding-right: 25px;
}

.info-container__content>* {
  opacity: 100;
}

.info-container__title {
  font-size: 24px;
  font-weight: 700;
  color: #0d0925;
  margin-bottom: 20px;
}

.info-container__text {
  color: #4e4a67;
  margin-bottom: 30px;
  line-height: 1.5em;
}

.info-container__button {
  display: inline-flex;
  background-image: linear-gradient(147deg, #5b0a6b 0%, #16034b 74%);
  padding: 15px 35px;
  border-radius: 50px;
  color: #fff;
  box-shadow: 0px 14px 80px rgba(0, 0, 0, 0.4);
  text-decoration: none;
  font-weight: 500;
  justify-content: center;
  text-align: center;
  letter-spacing: 1px;
}
<div >
  <div >
    <img src="https://www.dmarge.com/wp-content/uploads/2021/01/dwayne-the-rock-.jpg">
  </div>
  <div >
    <div >About Me</div>
    <div >This is fake info about a persons life.</div>
    <a href="About.html" >READ MORE</a>
  </div>
</div>

  • Related