diff --git a/src/renderer/src/components/CodeBlockView/CodePreview.tsx b/src/renderer/src/components/CodeBlockView/CodePreview.tsx
index b4da2d4ee..c78b4af99 100644
--- a/src/renderer/src/components/CodeBlockView/CodePreview.tsx
+++ b/src/renderer/src/components/CodeBlockView/CodePreview.tsx
@@ -164,19 +164,11 @@ const CodePreview = ({ children, language, setTools }: CodePreviewProps) => {
}}>
{virtualizer.getVirtualItems().map((virtualItem) => (
diff --git a/src/renderer/src/components/CodeBlockView/view.tsx b/src/renderer/src/components/CodeBlockView/view.tsx
index 7d557d924..1ab685e8b 100644
--- a/src/renderer/src/components/CodeBlockView/view.tsx
+++ b/src/renderer/src/components/CodeBlockView/view.tsx
@@ -246,6 +246,11 @@ export const CodeBlockView: React.FC
= memo(({ children, language, onSave
const CodeBlockWrapper = styled.div<{ $isInSpecialView: boolean }>`
position: relative;
width: 100%;
+ /* FIXME: 最小宽度用于解决两个问题。
+ * 一是 CodePreview 在气泡样式下的用户消息中无法撑开气泡,
+ * 二是 代码块内容过少时 toolbar 会和 title 重叠。
+ */
+ min-width: 45ch;
.code-toolbar {
background-color: ${(props) => (props.$isInSpecialView ? 'transparent' : 'var(--color-background-mute)')};