フレックスボックスで可能なようですが、わかりません。フレックスボックスは使えますか?チャットウィンドウの下に入力があり、スクロールするチャット
http://codepen.io/MichaelJCole/pen/NGBVGe
目標:(メッセージにtypeing用)
- textareaの一番下に全体の時間のままです。
- チャットを開始し、必要に応じてスクロールします。
- 「Googleハングアウト」を使用している場合、その中のメッセージアプリのようです。
ここでマークアップです:
<div id="chatBar">
<div id="chatList">
<div class="chat mine">hello world</div>
<div class="chat theirs">hello moon</div>
</div>
<input id="chatBarInput" class="form-control" type="textarea">
</div>
そして、ここでは、CSSです:
html, body { height: 100%; }
#chatBar {
height: 100%;
display: flex;
flex-flow: column nowrap;
justify-content: flex-end;
overflow: none;
}
#chatList {
flex: 0 1 auto;
display: flex;
flex-flow: column nowrap;
justify-content: flex-end;
overflow-y: scroll;
}
#chatBarInput {
flex: 1 0 auto;
}
.chat {
flex: none;
align-self: flex-start;
background-color: lightgreen;
}
.chat.mine {
align-self: flex-end;
background-color: pink;
}
私は高さを設定せずに#chatBar
#chatList
"スクイーズ" とを取得することはできません。フレックスボックスを使用して回避しようとしていたのはどれですか: -/
申し訳ありませんが、私はバックエンドコーダーです。たくさんのものを試してみたら、それをCodePenのために調べた。
私は、内側のフレックスボックスにスクロールして、外側だけを残しておく必要があるようです。私はポジションを絶対に使用する必要がありますか?
私は全くないんだけどあなたが達成しようとしていることを確かめてください。しかし、フレックスコンテナ( '#chatBar')で' height:100% 'を使っているのが分かります。 * 100%?* CSSでパーセンテージの高さを使用する場合は、参考フレームを提供する必要があります。これをコードに追加します: 'html、body {height:100%; } ' –
オク、良い点。私はそれをcodepenに追加しましたが、それと同じ問題です。ボディが小さくなると、入力は下からスクロールします。私は外側のフレックスボックスに入力*を一番下に置き、スクロールしないようにします。内側のフレックスボックスはアイテムを下に置き、オーバーフローするとスクロールします。それは役に立ちますか? –