[解決済み] html要素(div)の高さはborder, padding, marginを含めてフルサイズ?
2023-04-06 18:06:53
質問
divの高さ全体を表示したいのですが、現在使用しているのは
document.getElementById('measureTool').offsetHeight
offsetHeight
- 要素の高さを返します。ボーダーとパディングがある場合はそれも含みますが、マージンは含みません。
しかし、div 内のネストされた要素のひとつに
margin-top
の
20%
というように、間違った計測をしてしまいます。試しに
style.marginTop
と
scrollHeight
を実行しても成功しません。
javascriptで要素(div)の完全な高さ(border、padding、margin)を取得するにはどうすればよいですか?
他に方法がなければ、私はjQueryで大丈夫です。
どのように解決するのですか?
jQueryを使用できる場合。
$('#divId').outerHeight(true) // gives with margins.
vanilla javascriptについては、もっとたくさん書く必要があります(いつものように・・・)。
function Dimension(elmID) {
var elmHeight, elmMargin, elm = document.getElementById(elmID);
if(document.all) {// IE
elmHeight = elm.currentStyle.height;
elmMargin = parseInt(elm.currentStyle.marginTop, 10) + parseInt(elm.currentStyle.marginBottom, 10) + "px";
} else {// Mozilla
elmHeight = document.defaultView.getComputedStyle(elm, '').getPropertyValue('height');
elmMargin = parseInt(document.defaultView.getComputedStyle(elm, '').getPropertyValue('margin-top')) + parseInt(document.defaultView.getComputedStyle(elm, '').getPropertyValue('margin-bottom')) + "px";
}
return (elmHeight+elmMargin);
}
関連
-
[解決済み] HTML要素の実際の幅と高さを取得するにはどうすればよいですか?
-
[解決済み] CSS 100% height と padding/margin の関係
-
[解決済み] JavaScriptで要素にクラスが含まれているかどうかを確認する?
-
[解決済み】Iframeをコンテナの残り高さの100%にフィットさせる
-
[解決済み】jQuery: jQueryでhidden要素の高さを取得する
-
[解決済み] bootstrap のポップオーバーがすべての要素の上に表示されない
-
[解決済み] JSXとLoadshを使用して、ある要素をn回繰り返す方法
-
[解決済み] オブジェクトの配列からReactコンポーネントをレンダリングする
-
[解決済み] Javascript / jQueryでAndroid端末を検出する。
-
[解決済み] jQueryを使用して、すべてのクリックイベントハンドラを削除するにはどうすればよいですか?
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
[解決済み] <Enter>でjQuery UIダイアログを送信する
-
[解決済み] jqueryでdivの要素がオーバーフローしていないかチェックする
-
[解決済み] TypeScriptのdeclare classとinterfaceの違いとは?
-
[解決済み] node.jsで文字列のsha1ハッシュを取得するにはどうすればよいですか?
-
[解決済み] JavaScriptで:hoverのCSSプロパティを変更する
-
[解決済み] ECMAScriptとは?
-
[解決済み] Chromeのwebkitインスペクタで「Unsafe JavaScript attempt to access frame with URL...」というエラーが継続的に発生する。
-
[解決済み] これは純関数ですか?
-
[解決済み] 変異を伴わないオブジェクトからの値の削除
-
[解決済み] Fetch: ステータスがOKでない場合、プロミスを拒否し、エラーをキャッチするか?