clientWidth возвращает неправильную ширину

#javascript #html #css

#javascript #HTML #css

Вопрос:

Я установил ширину изображения (тега img) в 1150 пикселей

 * {
    margin: 0;
    padding: 0;
    box-sizing: border-box;
    user-select: none;
}
#background-image-myos {
    border: 2px solid black;
    border-radius: 5px;
    width: 1150px;
}
  

Однако clientHeight возвращает 1146

 alert("Height is "   document.getElementById("background-image-myos").clientHeight);
alert("Width is "   document.getElementById("background-image-myos").clientWidth);
  

Почему? Я сделал что-то не так?

Ответ №1:

Вам нужно использовать offsetWidth и offsetHeight , Который учитывает границы, отступы и т. Д.

Вот так:

 alert("Height is "   document.getElementById("background-image-myos").offsetHeight);
alert("Width is "   document.getElementById("background-image-myos").offsetWidth);