答えて
var style = window.getComputedStyle(document.getElementById("Example"), null);
style.getPropertyValue("height");
上記のバージョンが最新のブラウザで動作します。 IEブラウザの場合はcurrentStyle
を確認してください。コメントから
あなたが意味する: 'parseInt(style.getPropertyValue( 'height'));' – vsync
css http://jsfiddle.net/Kxsvx/に高さがないのでInternet Explorerは "auto"を返します。それの高さ! – Mic
@MicはどのInternet Explorerですか? – Fresheyeball
EDIT:
http://jsfiddle.net/hTGCE/1/(その後、予想もう少しコード)あなたはこのような機能を見つけるインターネットで
:
function getRectangle(obj) {
var r = { top: 0, left: 0, width: 0, height: 0 };
if(!obj)
return r;
else if(typeof obj == "string")
obj = document.getElementById(obj);
if(typeof obj != "object")
return r;
if(typeof obj.offsetTop != "undefined") {
r.height = parseInt(obj.offsetHeight);
r.width = parseInt(obj.offsetWidth);
r.left = r.top = 0;
while(obj && obj.tagName != "BODY") {
r.top += parseInt(obj.offsetTop);
r.left += parseInt(obj.offsetLeft);
obj = obj.offsetParent;
}
}
return r;
}
あなたはパディングを減算したい場合は/ボーダー-widthはcssファイルに設定され、style属性では動的ではありません。
var elem = document.getElementById(id);
var borderWidth = 0;
try {
borderWidth = getComputedStyle(elem).getPropertyValue('border-top-width');
} catch(e) {
borderWidth = elem.currentStyle.borderWidth;
}
borderWidth = parseInt(borderWidth.replace("px", ""), 10);
と同じ詰め物が付いています。あなたはそれを計算します。
私は同じ問題を抱えていたし、ネイティブクロスplattformソリューションはありませんが分かったが、CSSで `ボーダー-box`を使用しないのはなぜかの
var actual_h = element.offsetHeight;
if(parseInt(element.style.paddingTop.replace('px','')) > 0){
actual_h=actual_h - parseInt(element.style.paddingTop.replace('px',''));
}
if(parseInt(element.style.paddingBottom.replace('px','')) > 0){
actual_h=actual_h - parseInt(element.style.paddingBottom.replace('px',''));
}
MDN [states](https://developer.mozilla。 "style'プロパティは要素のスタイルを一般的に学習するのに有用ではありません。なぜならそれは要素のインライン' set_style_information 'に設定されたCSS宣言だけを表すからです。 style'属性[...]」となります。 – Spooky
ボックスサイズはIE7では機能しません – Chandrakant
- 1. サーバー側DOMプロパティの取得(要素の高さ)
- 2. 前の要素の高さを取得
- 3. "each"の内側のタグ要素を取得
- 4. 高さ全体をカバーするリスト要素を取得する方法 - CSS IE8リスト要素の高さ
- 5. 要素の高さを取得して設定する
- 6. 要素の高さを取得する問題
- 7. HTML要素の高さを取得するjQuery
- 8. React:テキスト要素の高さを取得する
- 9. 正確な要素の高さを取得する
- 10. IEで自動高さの要素の実際の高さを取得
- 11. 親を満たすインラインブロック要素の高さを取得
- 12. org.w3c.dom:要素の高さと幅を取得しますか?
- 13. 要素内の要素を取得する(親/子)WPF
- 14. 隠し要素内のスパンの高さ
- 15. CSS:可変高さ要素内のセクションの高さを固定
- 16. JQuery各div要素の高さを取得
- 17. DOM要素のコレクションから最高の高さの値を取得
- 18. クエリーセット内の要素のインデックスを取得
- 19. CSSの高さが適用された後で、Webページの要素のデフォルトの高さを取得する)
- 20. div内の要素を100%の高さに設定する
- 21. JQueryで要素の高さを取得してアニメーションで使用する方法
- 22. jqueryで実際の高さではなく、要素の目に見える高さを取得します
- 23. クラスとIDによって要素内の要素を取得する - JavaScriptの
- 24. 要素内のテキストの縦の高さを揃えますか?
- 25. Text要素の実際の幅と高さを取得できますか?
- 26. 要素の元の高さを変更した後に取得します
- 27. 固定divとiframe要素の内側
- 28. なぜ要素は、フィドル、内側のdiv
- 29. Javascriptでiframe要素内の要素を取得する方法は?
- 30. iframe内の要素のY位置を取得する
ソリューションは簡単ですか?そうすれば、これらのことを心配する必要はありません。次に、offsetHeightを使用すると、適切な高さがマージンなしで返されます。 – elclanrs
これはCSSコントロールがないプラグインのための非常に具体的な質問です。私はちょうど私が得たものと一緒に作業しなければなりません – vsync
だから...あなたはまだ 'box-sizing:border-box'あなたにいくつかの時間と頭痛を救うでしょう。 – elclanrs