Why tranform(-45deg) is written multiple times? Why one is not enough?

Tell us what’s happening:

hi
why the transform: rotate(-45deg) is mentioned multiple times. In class heart and in the keyframes. Why transform(-45deg) is not enough in the class .heart? why we have to mention this command again in the keyframes twice?

Your code so far


<style>
.back {
  position: fixed;
  padding: 0;
  margin: 0;
  top: 0;
  left: 0;
  width: 100%;
  height: 100%;
  background: white;
  animation-name: backdiv;
  animation-duration: 1s;

}

.heart {
  position: absolute;
  margin: auto;
  top: 0;
  right: 0;
  bottom: 0;
  left: 0;
  background-color: pink;
  height: 50px;
  width: 50px;
  transform: rotate(-45deg);
  animation-name: beat;
  animation-duration: 1s;

}
.heart:after {
  background-color: pink;
  content: "";
  border-radius: 50%;
  position: absolute;
  width: 50px;
  height: 50px;
  top: 0px;
  left: 25px;
}
.heart:before {
  background-color: pink;
  content: "";
  border-radius: 50%;
  position: absolute;
  width: 50px;
  height: 50px;
  top: -25px;
  left: 0px;
}

@keyframes backdiv {
  50% {
    background: #ffe6f2;
  }
}

@keyframes beat {
  0% {
    transform: scale(1) rotate(-45deg);
  }
  50% {
    transform: scale(0.6) rotate(-45deg);
  }
}

</style>
<div class="back"></div>
<div class="heart"></div>

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 6.3; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/83.0.4103.61 Safari/537.36.

Challenge: Make a CSS Heartbeat using an Infinite Animation Count

Link to the challenge:

when you have multiple times the same rule applied to the same element, only the last one written will be applied

if you have

transform: rotate(-45deg);
transform: scale(1);

only the second one is applied, so if you want to keep the rotation in the keyframes you need to write the rotate again

1 Like

Thanks for the clarification :smiley: