Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

JavaScript style property is empty

I need to calculate the width of an element's border. If I set it explicitly (via CSS), then I can access it in JavaScript by:

    element.style.borderWidth

However, if only specify border style property (and not 'border-width') ->

    border-style: solid

Then the borderWidth property is empty. Why? My approach to calculate width is as follows:

if(element.style.borderWidth == ''){
    borderWidth = (offsetHeight - clientHeight)/2
}

Is there any other way to calculate border width whilst only setting border-style?

like image 548
Anton Putov Avatar asked Dec 26 '22 13:12

Anton Putov


1 Answers

You can use the window.getComputedStyle for modern browsers

window.getComputedStyle(element).borderBottomWidth;

For IE pre-9 you will have to use an alternative

element.currentStyle.borderBottomWidth 
like image 128
Gabriele Petrioli Avatar answered Jan 07 '23 14:01

Gabriele Petrioli