fix(chat): improve in-app keyboard avoidance
This commit is contained in:
@@ -1,16 +1,16 @@
|
||||
/* ChatInputBar 输入栏容器样式(与 Dart chat_input_bar.dart 对齐) */
|
||||
|
||||
/* 键盘适配(修复 FB IAB / 小米 WebView 不收缩 100dvh 导致输入框被遮挡):
|
||||
* --keyboard-height 由 src/hooks/use-keyboard-height.ts 写到 <html>,默认 0px。
|
||||
/* 键盘适配:
|
||||
* --app-viewport-height 会让聊天容器优先贴合 visualViewport。
|
||||
* --chat-input-lift 是 Android 应用内浏览器的兜底抬升值。
|
||||
* env(safe-area-inset-bottom) 处理小米全面屏手势条 / iPhone home indicator。
|
||||
* 二者在原生已正确处理键盘的浏览器(iOS Safari、现代 Chrome Android)上都为 0,
|
||||
* 因此无视觉副作用。 */
|
||||
* 正常浏览器中 --chat-input-lift 为 0,因此无视觉副作用。 */
|
||||
.bar {
|
||||
flex: 0 0 auto;
|
||||
padding: 0
|
||||
var(--spacing-lg, 16px)
|
||||
calc(
|
||||
var(--spacing-lg, 16px) + var(--keyboard-height, 0px) +
|
||||
var(--spacing-lg, 16px) + var(--chat-input-lift, 0px) +
|
||||
env(safe-area-inset-bottom, 0px)
|
||||
);
|
||||
background: transparent;
|
||||
|
||||
Reference in New Issue
Block a user