Это проблема стиля. В этом сценарии было бы проще отделить стиль от кода. Вы можете сделать это, присвоив ему класс. Я бы также приказал предоставить оболочку вокруг квадратов, чтобы вы могли лучше контролировать макет. Затем вы можете еще больше улучшить настройку, указав ему css переменных в оболочке, чтобы вы могли контролировать его стиль, если вам когда-либо понадобится. вот пример:
const setup = () => {
makeSquare();
makeSquare();
makeSquare();
changeSquareColorToPink();
changeSquareDefaultColorToBlue();
}
function makeSquare() {
const square = document.createElement('div');
const squareWrapper = document.querySelector('.square-wrapper');
square.classList.add('square');
squareWrapper.appendChild(square)
}
function changeSquareColorToPink() {
const square = document.querySelector('.square:nth-child(1)');
square.style.setProperty('--square-color', 'pink');
}
function changeSquareDefaultColorToBlue() {
const squareWrapper = document.querySelector('.square-wrapper');
squareWrapper.style.setProperty('--square-color', 'blue');
}
window.addEventListener('load', setup)
.bt_makeSquare {
margin-top: 6em;
}
.square-wrapper {
--square-color: red;
--square-size: 50px;
margin-top: 2em;
}
.square {
margin: 1em;
display: inline-block;
width: var(--square-size);
height: var(--square-size);
box-sizing: border-box;
border: 1px solid var(--square-color);
background-color: var(--square-color);
}
<button class="bt_makeSquare" onclick="makeSquare()">Make a square</button>
<div class="square-wrapper"></div>