當外部 Div 大小調整時,如何使可滾動 Div 保持在底部?
當外部 Div 調整大小時,可滾動 Div 粘在底部
本文解決了有關流暢調整大小的外部 div 內的滾動行為的問題。目標是保持內部 div .messages-container 底部附近的滾動位置,儘管外部 div 的高度發生任何變化。
當 .text-input 欄位動態擴充時會出現問題,導致使用者會看不到對話中的底部訊息。
使用CSS 的解決方案(flex-direction:column-reverse)
首選解決方案利用.messages-container div 的CSS 的flex-direction: column-div 的CSS 的flex-direction: column-div reverse 屬性。這種方法在容器底部對齊訊息,模仿流行聊天應用程式中觀察到的行為。此外,即使沒有訊息,它也確保滾動條保持可見。
.chat-window { display: flex; flex-direction: column; height: 100%; } .chat-messages { flex: 1; height: 100%; overflow: auto; display: flex; flex-direction: column-reverse; }
注意事項和瀏覽器相容性
但是,這種方法可能會在IE 中遇到錯誤/Edge/Firefox,滾動條變得不可見。
解決方法IE/Edge/Firefox
為了解決這個問題,我們可以採用模仿 flex-direction:column-reverse 行為的解決方法。
// scroll to bottom function updateScroll(el) { el.scrollTop = el.scrollHeight; } // only shift-up if at bottom function scrollAtBottom(el) { return (el.scrollTop + 5 >= (el.scrollHeight - el.offsetHeight)); }
透過合併這些函數在我們的程式碼中,我們可以確保 IE/Edge/Firefox 表現出與 flex-direction: column-reverse 相同的滾動行為。
// ... if (atbottom && (!isWebkit || isEdge)) { updateScroll(msgdiv); }
以上是當外部 Div 大小調整時,如何使可滾動 Div 保持在底部?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

您是否曾經在項目上需要一個倒計時計時器?對於這樣的東西,可以自然訪問插件,但實際上更多

在元素個數不固定的情況下如何通過CSS選擇第一個指定類名的子元素在處理HTML結構時,常常會遇到元素個數不�...

關於Flex佈局中紫色斜線區域的疑問在使用Flex佈局時,你可能會遇到一些令人困惑的現象,比如在開發者工具(d...

格子呢是一塊圖案布,通常與蘇格蘭有關,尤其是他們時尚的蘇格蘭語。在Tartanify.com上,我們收集了5,000多個格子呢
