display: flex;
align-items: center; Почему блок заходит на плавающий блок?
div {
border: 2px solid;
display: flex;
}
.a {
height: 3rem;
width: 3rem;
}
.b {
flex-grow: 1;
height: 3rem;
border: 4px solid #f00;
}

div{
background: linear-gradient(to left, rgba(255, 255, 255, 0.3) 20%,
rgba(255, 0, 0, 0.7) 60%,
rgba(255, 255, 255, 0.3) 80%),
}