1- /* Updated IDE.css - ModernSidebar 통합 버전 - 사이드바 접힘 시 에디터 레이아웃 자동 조정 */
1+ /* Updated IDE.css - 스크롤바 문제 및 이중 테두리 문제 수정 */
22
33/* 기존 CSS 변수들 개선 */
44: root {
@@ -49,17 +49,19 @@ body.dark-mode {
4949 padding : 0 ;
5050}
5151
52+ /* 🔧 스크롤바 문제 해결: body 오버플로우 제어 */
5253body {
5354 font-family : 'Segoe UI' , 'Roboto' , 'Helvetica Neue' , sans-serif;
5455 background-color : var (--bg );
5556 margin : 0 ;
5657 padding : 0 ;
5758 color : var (--text );
5859 min-height : 100vh ;
60+ overflow-x : hidden; /* 가로 스크롤바 방지 */
5961}
6062
6163/* ============================================
62- 🆕 ModernSidebar 전용 스타일
64+ 🆕 ModernSidebar 전용 스타일 - 🔧 이중 테두리 문제 해결
6365 ============================================ */
6466
6567.sidebar {
9193 height : 100vh ;
9294 width : 100% ;
9395 background-color : var (--element );
94- border-right : 1 px solid var ( --border );
96+ border-right : none; /* 🔧 중복 테두리 제거 */
9597 overflow : hidden;
9698}
9799
@@ -647,24 +649,25 @@ body.dark-mode .modern-sidebar-content::-webkit-scrollbar-thumb:hover {
647649 기존 메인 콘텐츠 스타일 유지 (사이드바 제외) - 🔄 수정된 부분
648650 ============================================ */
649651
652+ /* 🔧 스크롤바 문제 해결: 메인 콘텐츠 너비 제한 - 애니메이션 개선 */
650653.main-content {
651654 flex : 1 ;
652655 display : flex;
653656 flex-direction : column;
654- transition : margin-left 0.3 s ease;
657+ transition : none; /* 🔧 transition 제거로 덜컥거림 방지 */
655658 position : relative;
656659 background-color : var (--bg );
657660 height : 100vh ;
658- min-width : 0 ;
661+ min-width : 0 ; /* 플렉스 축소 허용 */
659662 padding-top : 76px ;
660- width : 100 % ; /* 너비를 명시적으로 100%로 설정 */
663+ overflow-x : hidden ; /* 🔧 가로 스크롤바 방지 */
661664}
662665
663666.sidebar .collapsed + .main-content {
664667 margin-left : 0 ;
665- width : 100% ; /* 사이드바가 접혔을 때도 100% 너비 보장 */
666668}
667669
670+ /* 🔧 스크롤바 문제 해결: IDE 컨테이너 너비 제한 */
668671.ide-container {
669672 display : flex;
670673 height : 100vh ;
@@ -673,8 +676,9 @@ body.dark-mode .modern-sidebar-content::-webkit-scrollbar-thumb:hover {
673676 background-color : var (--bg );
674677 color : var (--text );
675678 position : relative;
676- width : 100% ;
677- overflow-x : hidden;
679+ width : 100vw ; /* 🔧 명시적으로 뷰포트 너비 설정 */
680+ max-width : 100vw ; /* 🔧 최대 너비 제한 */
681+ overflow-x : hidden; /* 🔧 가로 스크롤바 방지 */
678682}
679683
680684/* 햄버거 메뉴 버튼 */
@@ -947,20 +951,23 @@ body.dark-mode .save-button:hover {
947951 color : var (--warning );
948952}
949953
950- /* 콘텐츠 레이아웃 */
954+ /* 콘텐츠 레이아웃 - 🔧 스크롤바 문제 해결 */
951955.content-layout {
952956 display : flex;
953957 height : calc (100vh - var (--header-height ) - 10px );
954958 position : relative;
959+ max-width : 100% ; /* 🔧 최대 너비 제한 */
960+ overflow-x : hidden; /* 🔧 가로 스크롤바 방지 */
955961}
956962
963+ /* 🔧 스크롤바 문제 해결: 에디터 섹션 너비 제한 */
957964.editor-section {
958965 flex : 1 ;
959- min-width : 0 ;
966+ min-width : 0 ; /* 🔧 플렉스 축소 허용 */
960967 height : 100% ;
961968 position : relative;
962969 background-color : var (--bg );
963- overflow : hidden; /* 오버플로우 방지 */
970+ overflow : hidden; /* 🔧 오버플로우 방지 */
964971}
965972
966973.monaco-editor-wrapper {
@@ -970,16 +977,18 @@ body.dark-mode .save-button:hover {
970977 overflow : hidden; /* 오버플로우 방지 */
971978}
972979
973- /* 오른쪽 패널 */
980+ /* 🔧 스크롤바 문제 해결: 오른쪽 패널 크기 확장 */
974981.right-panel {
975- width : 300px ;
976- min-width : 300px ;
982+ width : 400px ; /* 🔄 300px → 400px로 확장 */
983+ min-width : 400px ; /* 🔄 300px → 400px로 확장 */
984+ max-width : 400px ; /* 🔄 300px → 400px로 확장 */
977985 display : flex;
978986 flex-direction : column;
979987 border-left : 1px solid var (--border );
980988 background-color : var (--bg );
981989 box-shadow : -2px 0 10px rgba (0 , 0 , 0 , 0.1 );
982990 flex-shrink : 0 ;
991+ overflow : hidden; /* 🔧 오버플로우 방지 */
983992}
984993
985994body .dark-mode .right-panel {
@@ -1438,7 +1447,7 @@ body.dark-mode .context-menu-item:hover {
14381447}
14391448
14401449/* ============================================
1441- 🆕 반응형 스타일
1450+ 🆕 반응형 스타일 - 🔧 스크롤바 문제 해결 포함
14421451 ============================================ */
14431452
14441453@media (max-width : 992px ) {
@@ -1448,6 +1457,7 @@ body.dark-mode .context-menu-item:hover {
14481457
14491458 .right-panel {
14501459 width : 100% ;
1460+ max-width : 100% ; /* 🔧 반응형에서도 최대 너비 제한 */
14511461 height : 40% ;
14521462 border-left : none;
14531463 border-top : 1px solid var (--border );
@@ -1460,6 +1470,14 @@ body.dark-mode .context-menu-item:hover {
14601470 .sidebar {
14611471 width : 260px ;
14621472 }
1473+
1474+ .main-content {
1475+ max-width : calc (100vw - 260px ); /* 🔧 반응형 사이드바 너비에 맞춤 */
1476+ }
1477+
1478+ .sidebar .collapsed + .main-content {
1479+ max-width : 100vw ; /* 🔧 사이드바 접힘 시 전체 너비 */
1480+ }
14631481}
14641482
14651483@media (max-width : 768px ) {
@@ -1475,6 +1493,14 @@ body.dark-mode .context-menu-item:hover {
14751493 width : 240px ;
14761494 }
14771495
1496+ .main-content {
1497+ max-width : calc (100vw - 240px ); /* 🔧 모바일 사이드바 너비에 맞춤 */
1498+ }
1499+
1500+ .sidebar .collapsed + .main-content {
1501+ max-width : 100vw ; /* 🔧 사이드바 접힘 시 전체 너비 */
1502+ }
1503+
14781504 .sidebar-title {
14791505 font-size : 12px !important ;
14801506 }
@@ -1550,6 +1576,14 @@ body.dark-mode .context-menu-item:hover {
15501576 width : 220px ;
15511577 }
15521578
1579+ .main-content {
1580+ max-width : calc (100vw - 220px ); /* 🔧 더 작은 화면 사이드바 너비에 맞춤 */
1581+ }
1582+
1583+ .sidebar .collapsed + .main-content {
1584+ max-width : 100vw ; /* 🔧 사이드바 접힘 시 전체 너비 */
1585+ }
1586+
15531587 .modern-sidebar-header {
15541588 padding : 12px ;
15551589 }
0 commit comments