質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

新規登録して質問してみよう
ただいま回答率
85.46%
JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

Q&A

解決済

2回答

966閲覧

JavaScript+CSS heightの指定

yukinmitu

総合スコア7

JavaScript

JavaScriptは、プログラミング言語のひとつです。ネットスケープコミュニケーションズで開発されました。 開発当初はLiveScriptと呼ばれていましたが、業務提携していたサン・マイクロシステムズが開発したJavaが脚光を浴びていたことから、JavaScriptと改名されました。 動きのあるWebページを作ることを目的に開発されたもので、主要なWebブラウザのほとんどに搭載されています。

CSS

CSSはXMLやHTMLで表現した色・レイアウト・フォントなどの要素を指示する仕様の1つです。

0グッド

0クリップ

投稿2021/10/20 22:15

前提・実現したいこと

1のコードだと高さを変更押すとその文字に合わせて青い部分の高さが変わります

2のコードにすると青い部分からはみ出た形になります

1と同じように2を表示させるにはどうしたらいいでしょうか?

1 <style> body,html{ height:100%; } </style> <div style="height:30%"> <div style="height:25%;background:red;"></div> <div id="d" style="height:30%;background:blue"></div> <div style="height:25%;background:red"></div> </div> <input type="button" value="高さ変更" onclick="change()"> <script> function change(){ d.innerHTML="aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>"; d.style.height="auto"; } </script>

該当のソースコード

2 <style> body,html{ height:100%; } </style> <div style="height:30%"> <div style="height:25%;background:red;"></div> <div id="d" style="height:30%;background:blue"></div> <div style="height:25%;background:red"></div> </div> <div style="height:30%"> <div style="height:25%;background:red;"></div> <div style="height:30%;background:blue"></div> <div style="height:25%;background:red"></div> </div> <input type="button" value="高さ変更" onclick="change()"> <script> function change(){ d.innerHTML="aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>"; d.style.height="auto"; } </script>

気になる質問をクリップする

クリップした質問は、後からいつでもMYページで確認できます。

またクリップした質問に回答があった際、通知やメールを受け取ることができます。

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yambejp

2021/10/21 00:13

2の場合、下の段落(?)を下げたいのでしょうか?
yukinmitu

2021/10/21 00:18 編集

aaaaaaaの部分が青から赤い部分にはみ出ない、青の部分にheight:autoがかかった状態にしたいです
guest

回答2

0

この部分が下がって見える形で表示したいのですがどうしたらいいんでしょうか?

親要素の高さも auto にすれば中身の高さに合わせて拡大します。
ただし、子要素の高さを%で指定すると高さが0になってしまいますので、
vh単位で高さを指定すればどうでしょう。

html

1<div id="wrapper" style="height:auto;margin-bottom:6vh;"> 2<div style="height:7.5vh;background:red;"></div> 3<div id="d" style="height:9vh;background:blue"></div> 4<div style="height:7.5vh;background:red;"></div> 5</div>

css

1body,html{ 2 height:100vh; 3}

投稿2021/10/21 00:47

hatena19

総合スコア33790

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

0

ベストアンサー

aaaaaaaの部分が青から赤い部分にはみ出ない

同じ色をつかっているからわかりにくいですがはみでてませんよ。
relativeをしていしてあげるとわかりやすいかもしれません

sciript

1<style> 2body,html{ 3 height:100%; 4} 5</style> 6<div style="height:30%;position:relative"> 7<div style="height:25%;background:red;"></div> 8<div id="d" style="height:30%;background:blue"></div> 9<div style="height:25%;background:red"></div> 10</div> 11<div style="height:30%;"> 12<div style="height:25%;background:yellow;"></div> 13<div style="height:30%;background:lime"></div> 14<div style="height:25%;background:aqua"></div> 15</div> 16<input type="button" value="高さ変更" onclick="change()"> 17<script> 18function change(){ 19d.innerHTML="aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>"; 20d.style.height="auto"; 21} 22</script>

あとは、どうしたいのか次第です
下段落を下にずらすならこんな感じ?

HTML

1<script> 2window.addEventListener('DOMContentLoaded', ()=>{ 3 document.querySelectorAll('div').forEach(x=>{ 4 x.style.height=x.offsetHeight+"px"; 5 }); 6}); 7</script> 8<style> 9body,html{ 10 height:100%; 11} 12</style> 13<div style="height:30%;"> 14<div style="height:25%;background:red;"></div> 15<div id="d" style="height:30%;background:blue"></div> 16<div style="height:25%;background:red"></div> 17</div> 18<div style="height:30%;"> 19<div style="height:25%;background:yellow;"></div> 20<div style="height:30%;background:lime"></div> 21<div style="height:25%;background:aqua"></div> 22</div> 23<input type="button" value="高さ変更" onclick="change()"> 24<script> 25function change(){ 26d.innerHTML="aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>aaa<br>"; 27d.style.height="auto"; 28d.parentNode.style.height="auto"; 29} 30</script>

投稿2021/10/21 00:22

編集2021/10/21 00:59
yambejp

総合スコア115010

バッドをするには、ログインかつ

こちらの条件を満たす必要があります。

yukinmitu

2021/10/21 00:27

relativeにしたところはみでないのが確認できました 上記のソースで高さ変更押したら <div style="height:30%;"> <div style="height:25%;background:yellow;"></div> <div style="height:30%;background:lime"></div> <div style="height:25%;background:aqua"></div> </div> この部分が下がって見える形で表示したいのですがどうしたらいいんでしょうか? (最初からこの形が実現したかった形です)
yambejp

2021/10/21 00:57

高さを%でやっていて合計が100%にならない処理をしているので 想定どおりにはならないと思いますよ
guest

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

15分調べてもわからないことは
teratailで質問しよう!

ただいまの回答率
85.46%

質問をまとめることで
思考を整理して素早く解決

テンプレート機能で
簡単に質問をまとめる

質問する

関連した質問