我想通過js動態設置元素padding-top的百分比值:以下幾種都是無法設置成功的:
// setAttribute設置padding-top並且轉換為百分比 imageBox.setAttribute('padding-top',`${(imageHeight)*100}%`); //setAttribute設置padding-top使用percentage imageBox.setAttribute('padding-top',`percentage(${imageHeight})`); // style屬性直接設置 使用percentage imageBox.style.paddingTop = `percentage${imageHeight}`;
成功實現的方式:
imageBox.style.paddingTop = `${imageHeight}%`;
percentage這個百分比用法在css中是起作用的,在js中設置css樣式的時候還是盡量少用,會出現設置不成功的問題,還是需要轉換成真正的百分比。
一樓小伙伴提醒的很對,確實基礎沒掌握好,上面兩行是不可行的。設置css樣式應該使用setProperty()。