js獲取html元素寬度的思考

2021-08-30 05:20:19 字數 633 閱讀 6640

分兩種情況討論:

1、使用內聯樣式,即直接把css寫在html元素的style屬性中

通過以下js**可以獲取width等屬性,

alert(document.getelementbyid('d1').style.width);//100px
在firefox,ie,opera,safari,chrome上都可以取得到寬度和高度值。

2、使用嵌入、鏈入或引入樣式表(非內聯樣式),這時候通過element.style.width是獲取不到的。

最後封裝到乙個方法中,

function getrealstyle(el,cssname)

cssname==="float" ? document.all ? cssname='stylefloat' : cssname='cssfloat' : cssname;

sty = (len==2) ? sty[cssname] : sty;

return sty;

}

如果只想獲取元素的style物件,則只傳第乙個引數,第二個引數是獲取該物件style屬性為styname的值。

js獲取Html元素的實際寬度高度

第一種情況就是寬高都寫在樣式表裡,就比如 div1。這中情況通過 div1.style.width拿不到寬度,而通過 div1.offsetwidth才可以獲取到寬度。第二種情況就是寬和高是寫在行內中,比如style width 120px 這中情況通過上述2個方法都能拿到寬度。小結,因為id.of...

js獲取Html元素的實際寬度高度

第一種情況就是寬高都寫在樣式表裡,就比如 div1。這中情況通過 div1.style.width拿不到寬度,而通過 div1.offsetwidth才可以獲取到寬度。第二種情況就是寬和高是寫在行內中,比如style width 120px 這中情況通過上述2個方法都能拿到寬度。小結,因為id.of...

原生js獲取Html元素的實際寬度高度

第一種情況就是寬高都寫在樣式表裡,就比如 div1。這中情況通過 div1.style.width拿不到寬度,而通過 div1.offsetwidth才可以獲取到寬度。第二種情況就是寬和高是寫在行內中,比如style width 120px 這中情況通過上述2個方法都能拿到寬度。小結,因為id.of...