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

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

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

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

CSS

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

Q&A

解決済

1回答

3710閲覧

高さを固定せずにscrollを使う方法

harapara

総合スコア39

HTML5

HTML5 (Hyper Text Markup Language、バージョン 5)は、マークアップ言語であるHTMLの第5版です。

CSS

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

0グッド

1クリップ

投稿2020/03/18 04:08

画面の高さ100vhに動画、文章の順で縦に並べるレイアウトを組んでいるのですが(下図)

文章の部分のみスクロールする方法が分からず、どなたが良い方法あればご教授お願い致します。

動画はデバイスによって高さが可変いたします。高さは100vhのまま固定です。

▼イメージ図

矢印の範囲をスクロールしたいです。
イメージ説明

現段階での一部コードも載せておきます。

HTML

1<html> 2 <body> 3  <div class="video"> 4 <iframe 5 src="https://www.youtube.com…" 6 frameborder="0" 7 allow="accelerometer; autoplay; encrypted-media; gyroscope; picture-in-picture" 8 allowfullscreen></iframe> 9 </div> 10 11 <div class="content_wrap"> 12 <div class="content"> 13 14 <div class="comment_list"> 15 <ul> 16 <li><span class="comment">comment</span> 17 </li> 18 <li> 19 <span class="comment">comment</span> 20 </li> 21 <li> 22 <span class="comment">comment</span> 23 </li> 24 <li> 25 <span class="comment">comment</span> 26 </li> 27 </ul> 28 </div> 29 30 </div> 31  </div> 32 </body> 33</html>

scss

1html{ 2 width: 100%; 3 overflow: hidden; 4 height: 100vh; 5} 6body{ 7 height: 100%; 8 overflow: hidden; 9} 10.video{ 11 width: 100vw; 12 padding-bottom: 56.25%; 13 position: relative; 14 height: 0; 15 overflow: hidden; 16 iframe{ 17 position: absolute; 18 top: 0; 19 left: 0; 20 width: 100%; 21 height: 100%; 22 } 23} 24.comment_list{ 25 margin-top: 4%; 26 }

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

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

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

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

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

marlboro_tata

2020/03/18 04:54

動画自体のアスペクト比(つまり幅と高さの比率)は一定でしょうか? もし、そうなら、画面幅から動画の高さが取得できます。 動画の幅と高さの比率が、1:1なら高さは100vw、2:1なら高さは50wv。 動画の幅と高さの比率が仮に2:1として、 画面全体は100vhと高さを決め打ちしているなら、 コメント部分の領域の高さは (全体 - 動画の高さ - フッターの高さ(仮に60px))なので height: calc(100vh - 50vw - 60px); かな?
harapara

2020/03/18 07:03

動画は16:9なので height: calc(100vh - 56.25vw - 60px);ですかね。 calc()は対応ブラウザ少ないかと思って避けていましたが 結構対応してたんですね、、、 これでいこうかと思います! ありがとうございます!
marlboro_tata

2020/03/18 08:29

参考になったようで何よりです。 calc()が便利すぎてこれがなくては生きていけない... もし、コードを直されたら自己解決として回答に書かれると、 他の誰かのためになるかなと思います。どうぞご検討ください。
marlboro_tata

2020/03/18 08:31

あ、calc() IE11はまだあれこれバグがあるのでお気をつけください・・・どれがこれとは言いにくいのですが、不意にぶつかる気がします。。
harapara

2020/03/18 08:41

そうなんですね。。 頭にいれておきます。 ありがとうございます!
guest

回答1

0

自己解決

marlboro_tata様にご意見いただき、以下のような対応で解決いたしました。(ありがとうございます!)

動画サイズ16:9によりスクロールする部分の高さを計算
スクロール部分=全体の高さ - 動画の高さ - footerの高さ より

css

1.content_wrap{ 2 height: calc(100vh - 56.25vw - footerの高さ); 3 overflow: scroll; 4}

投稿2020/03/18 08:51

harapara

総合スコア39

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

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

あなたの回答

tips

太字

斜体

打ち消し線

見出し

引用テキストの挿入

コードの挿入

リンクの挿入

リストの挿入

番号リストの挿入

表の挿入

水平線の挿入

プレビュー

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

ただいまの回答率
85.37%

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

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

質問する

関連した質問