課程
/前端開發
/JavaScript
/JS動畫效果
請問一下為什么一個obj.offsetWidth-1會變長,而obj.style.width-1卻變短
2016-08-03
源自:JS動畫效果 4-2
正在回答
先明確兩個概念:obj.offsetWidth是盒子模型中盒子的寬度(content+2*padding+2*border)。obj.style.width只是content的寬度(即寫在CSS樣式中的width的值)。假設padding=0,如果設置了寬度為1px的border,那么obj.offsetWidth的值就是content的寬+2px,obj.offsetWidth-1的值就是content的寬+1px.因此會變長。而obj.style.width-1,的值就是content長度減1,所以越來越短。
Jade2_ 提問者
obj.offsetWidth獲取的是加上邊框的width,打個比方,一個div你給它設置div{width:200px; border:1px solid #ccc},它的obj.style.width=200px;而obj.offsetWidth=202px;你把obj.style.width=obj.offsetWidth-1;你算算看,還是變長了1px
舉報
通過本課程JS動畫的學習,從簡單動畫開始,逐步深入各種動畫框架封裝
1 回答obj.style.width=obj.offsetWidth+speed+'px'問題??
1 回答關于obj.offsetWidth和obj.style.Width的區別
2 回答obj.style.width與obj.offsetwidth有什么區別?
3 回答分不清用obj.style.width 和obj.offsetWidth的區別 有誰知道啊
5 回答Javascirpt想實現漸變變長的運動效果!
Copyright ? 2025 imooc.com All Rights Reserved | 京ICP備12003892號-11 京公網安備11010802030151號
購課補貼聯系客服咨詢優惠詳情
慕課網APP您的移動學習伙伴
掃描二維碼關注慕課網微信公眾號
2016-08-03
先明確兩個概念:obj.offsetWidth是盒子模型中盒子的寬度(content+2*padding+2*border)。obj.style.width只是content的寬度(即寫在CSS樣式中的width的值)。假設padding=0,如果設置了寬度為1px的border,那么obj.offsetWidth的值就是content的寬+2px,obj.offsetWidth-1的值就是content的寬+1px.因此會變長。而obj.style.width-1,的值就是content長度減1,所以越來越短。
2016-08-03
obj.offsetWidth獲取的是加上邊框的width,打個比方,一個div你給它設置div{width:200px; border:1px solid #ccc},它的obj.style.width=200px;而obj.offsetWidth=202px;你把obj.style.width=obj.offsetWidth-1;你算算看,還是變長了1px