Грешки с мерни единици в 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:
<div id="elem" style="width: 300px; height: 200px; border: 1px solid red;">
text
</div>
Даден е и бутон. При кликване на бутона
увеличете ширината и височината на div с
50px.
Даден е div:
<div id="elem" style="width: 300px; height: 200px; border: 1px solid red;">
text
</div>
Даден е и бутон. При кликване на бутона
увеличете ширината и височината на div с
10%.