241006-Gradio中Chatbot通过CSS自适应调整高度

A. 最终效果

B. 参考代码

python 复制代码
import gradio as gr

CSS = """
.contain { display: flex; flex-direction: column; }
.gradio-container { height: 100vh !important; } 
#component-0 { height: 100%; }
#chatbot { flex-grow: 1; overflow: auto;}
#tab_item_4 { height: calc(100vh - 83px);}
#tab_item_4 .gap { height: 100%; }
#tab_item_4 .gap #chatbot1 { flex-grow: 1; height: auto !important;}

#tab_item_5 { height: calc(100vh - 83px);}
#tab_item_5 .gap { height: 100%; }
#tab_item_5 .gap #chatbot2 { flex-grow: 1; height: auto !important;}
"""

with gr.Blocks(css=CSS) as demo:
    # with gr.Blocks() as demo:
    with gr.Tabs(elem_classes="tab_id_123"):
        with gr.Tab('I want this tap', elem_id="tab_item_4"):
            chatbot = gr.Chatbot(elem_id="chatbot1")
            msg = gr.Textbox()
            clear = gr.Button("Clear")

        with gr.Tab('I want this ta2p', elem_id="tab_item_5"):
            chatbot = gr.Chatbot(elem_id="chatbot2")
            msg = gr.Textbox()
            clear = gr.Button("Clear")


# with gr.Blocks(css=CSS) as demo:
#     chatbot = gr.Chatbot(elem_id="chatbot")
#     msg = gr.Textbox()
#     clear = gr.Button("Clear")

demo.launch(inbrowser=True, server_name='0.0.0.0', server_port=5001)
相关推荐
oo1213821 分钟前
里程碑5 - 完成框架 npm 包抽象封装并发布
前端·npm
达拉22 分钟前
我花了三天用AI写了个上一代前端构建工具
前端·前端工程化
bysking25 分钟前
【31-Ai-Agent】ai-agent的核心实现细节-bysking
前端
从文处安29 分钟前
「前端何去何从」(React教程)React 状态管理:从局部 State 到可扩展架构
前端·react.js
一拳不是超人33 分钟前
Three.js一起学-如何通过官方例子高效学习 Three.js?手把手带你“抄”出一个3D动画
前端·webgl·three.js
椰子皮啊37 分钟前
400行Node.js搞定mediasoup信令转换:一次跨语言"表白"实录
前端·架构
果然_1 小时前
告别混淆!Git 多账号按域名/目录自动切换身份的终极指南
前端
Wect1 小时前
React Scheduler & Lane 详解
前端·react.js·面试
myNameGL1 小时前
ArkTs核心语法
前端·javascript·vue.js
重庆穿山甲1 小时前
从零到精通:OpenClaw完整生命周期指南
前端·后端·架构