対話シミュレーション中に会話が増加しても、スクロールバーで見づらくなることなく、適切に対話履歴を表示できるように対話表示領域を改善しました。
/* 対話コンテナの自動拡張 */
#dialogueContainer {
max-height: 60vh;
overflow-y: auto;
scroll-behavior: smooth;
padding-right: 8px;
}
/* スクロールバーのカスタマイズ */
#dialogueContainer::-webkit-scrollbar {
width: 6px;
}
#dialogueContainer::-webkit-scrollbar-track {
background: #f1f5f9;
border-radius: 3px;
}
#dialogueContainer::-webkit-scrollbar-thumb {
background: #cbd5e1;
border-radius: 3px;
}
#dialogueContainer::-webkit-scrollbar-thumb:hover {
background: #94a3b8;
}
/* 空状態の表示 */
#dialogueContainer:empty::after {
content: "対話メッセージがここに表示されます";
color: #9ca3af;
font-style: italic;
}
scrollToLatestMessage() {
console.log('📜 最新メッセージまでスクロール中...');
setTimeout(() => {
const container = this.elements.dialogueContainer;
if (container) {
container.scrollTo({
top: container.scrollHeight,
behavior: 'smooth'
});
console.log(`📜 スクロール完了: ${container.scrollTop}/${container.scrollHeight}`);
}
}, 100);
}
✅ 適切な高さ制限: 対話領域がビューポートの60%以内に収まる
✅ 内部スクロール: 長い対話でも全体レイアウトを崩さない
✅ 自動スクロール: 新しいメッセージが追加されると自動的に最新位置まで移動
✅ スムーズなUX: CSS scroll-behavior: smooth
でなめらかなスクロール
✅ 視覚的改善: カスタムスクロールバーでモダンなデザイン
✅ レスポンシブ: 様々な画面サイズに対応
この改善により、株主対話シミュレーションがより使いやすく、長時間の対話でも快適に利用できるようになりました。