2017-09-02 36 views
2

這按預期工作:如果此位置使用calc()函數,如何使用Javascript設置元素的位置?

document.getElementById('blah').style.left = '200px'; 

然而,這種拒絕,原因不明,以我工作:

document.getElementById('blah').style.left = 'calc(225px-25px)'; 

在控制檯中沒有錯誤。該屬性似乎沒有設置。

爲什麼?以及如何使這項工作?

+0

爲什麼唐你把它設置爲25px? https://stackoverflow.com/questions/40871127/can-i-use-css-calc-withing-javascript – z3nth10n

+0

我的意思是不使用'calc(225px-220px)'use:'20px'直接。這沒有意義。計算更多的是百分比。 – z3nth10n

+0

@Ikillnukes當然,但這是一個簡單的代碼,儘可能簡單,而不是實際的意義。除此之外,在我的特定用例中,我在變量中使用了這些值中的一個,因此使用'calc'可以爲我節省一個'toString()'和一個'parseInt()'。 – gaazkam

回答

2

您的問題是使用calc+-運營商時,你必須始終whitespce包裹運營商雙方:

calc(225px - 25px) 

這會爲你工作:

document.getElementById('blah').style.left = 'calc(225px - 25px)'; 
相關問題