Вам необходимо установить высоту или максимальную высоту для элементов, содержащих изображения, или они будут адаптироваться к высоте их содержимого (изображений). Поскольку вы установили изображения на 100% ширину и высоту и не ограничивали их родителей, они будут становиться максимально большими в зависимости от исходного размера изображения.
Так, например:
.IDE_container {
display: flex;
align-items: baseline;
div.col-3 {
div {
height: 200px;
.IDE_div {
display: inline-block;
position: relative;
width: 100%;
height: 100%;
&::before {
content: "";
position: absolute;
top: 50%;
left: 50%;
width: var(--val);
padding-bottom: var(--val);
transform: translate(-50%, -50%);
z-index: -1;
border-radius: 50%;
}
}
}
}
}
Вы можете присвоить всем контейнерам один и тот же класс (например, fixed-height-bg) для более удобного их оформления.
Также обратите внимание : Вам не нужно указывать в столбцах отдельные классы для разных размеров экрана, поскольку они всегда занимают одинаковую пропорцию. Таким образом, вы можете просто использовать
<div class="col-3">
<div class="circle_bg">
<img src="myImage3.png" class="IDE_div" />
</div>
</div>
EDITED, чтобы добавить: если вы хотите, чтобы изображения сохраняли свои пропорции, вам нужно изменить css, чтобы он выглядел следующим образом:
img {
height: 100%; /* height of the parent container if specified, or of the image itself */
width: auto; /* will maintain the proportions of the image */
}
Вы также можете переключить эти значения в высоту: авто; ширина: 100%; если вы хотите, чтобы изображения занимали всю ширину.