Памылкі з адзінкамі вымярэння ў JavaScript
Часта лёгка памыліцца і забыцца пра адзінкі вымярэння. Напрыклад, так:
let width = 100;
elem.style.width = width; // упс...
Правільна будзе ўказаць значэнне ў пікселях:
let width = 100;
elem.style.width = width + 'px';
Уявім сабе, што мы хочам павялічыць
шырыню на некаторае значэнне. Для гэтага
нам спачатку трэба прачытаць шырыню,
затым здабыць лік, дадаць да яго
патрэбнае значэнне, дадаць 'px'
і толькі потым запісаць назад:
let widthPx = elem.style.width;
let widthNm = parseInt(widthPx);
elem.style.width = (widthNm + 30) + 'px';
Тлумачце, у чым памылка ў наступным кодзе:
<div style="font-size: 16px;">
text
</div>
let elem = document.querySelector('div');
elem.style.fontSize = elem.style.fontSize + 2;
Тлумачце, у чым памылка ў наступным кодзе:
<div style="font-size: 16px;">
text
</div>
let elem = document.querySelector('div');
elem.style.fontSize = parseInt(elem.style.fontSize + 2) + 'px';
Тлумачце, у чым памылка ў наступным кодзе:
<div style="font-size: 2.5em;">
text
</div>
let elem = document.querySelector('div');
elem.style.fontSize = parseInt(elem.style.fontSize) + 2 + 'em';
Дадзены дыў:
<div id="elem" style="width: 300px; height: 200px; border: 1px solid red;">
text
</div>
Дадзена таксама кнопка. Па кліку на кнопку
павялічце шырыню і вышыню дыва на
50px.
Дадзены дыў:
<div id="elem" style="width: 300px; height: 200px; border: 1px solid red;">
text
</div>
Дадзена таксама кнопка. Па кліку на кнопку
павялічце шырыню і вышыню дыва на
10%.