Skip to content

Commit d426cd6

Browse files
committed
fix: Disable details popup background scroll
1 parent eb5eb33 commit d426cd6

File tree

1 file changed

+72
-5
lines changed

1 file changed

+72
-5
lines changed

example/src/styles/RowDetailsPopup.css

Lines changed: 72 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -5,7 +5,6 @@
55
left: 0;
66
right: 0;
77
bottom: 0;
8-
z-index: 1000;
98
display: flex;
109
align-items: center;
1110
justify-content: center;
@@ -23,8 +22,10 @@
2322
max-width: 500px;
2423
width: 90%;
2524
max-height: 80vh;
26-
overflow: hidden;
25+
overflow: hidden; /* Changed to hidden to prevent overall scroll */
2726
font-family: 'DM Sans', sans-serif;
27+
display: flex;
28+
flex-direction: column;
2829
}
2930

3031
.row-details-popup-header {
@@ -33,6 +34,7 @@
3334
display: flex;
3435
justify-content: space-between;
3536
align-items: center;
37+
flex-shrink: 0; /* Prevent header from shrinking */
3638
}
3739

3840
.row-details-popup-title {
@@ -55,8 +57,9 @@
5557

5658
.row-details-popup-content {
5759
padding: 1.5rem;
58-
max-height: 60vh;
59-
overflow-y: auto;
60+
flex: 1; /* Take remaining space */
61+
overflow-y: auto; /* Enable scroll only for content */
62+
min-height: 0; /* Allow content to shrink */
6063
}
6164

6265
.row-details-popup-footer {
@@ -65,6 +68,7 @@
6568
display: flex;
6669
justify-content: flex-end;
6770
gap: 0.75rem;
71+
flex-shrink: 0; /* Prevent footer from shrinking */
6872
}
6973

7074
.row-details-popup-close-action {
@@ -180,5 +184,68 @@
180184

181185
/* Disable background scroll when popup is open */
182186
body.popup-open {
183-
overflow: hidden;
187+
overflow: hidden !important;
188+
position: fixed !important;
189+
width: 100% !important;
190+
height: 100% !important;
191+
}
192+
193+
/* Prevent scrolling on all table containers when popup is open */
194+
body.popup-open .table-wrapper,
195+
body.popup-open .table-container,
196+
body.popup-open .app-content,
197+
body.popup-open .app {
198+
overflow: hidden !important;
199+
pointer-events: none !important;
200+
}
201+
202+
/* Override the table's !important overflow rules when popup is open */
203+
body.popup-open .table-responsive-container {
204+
overflow: hidden !important;
205+
overflow-x: hidden !important;
206+
overflow-y: hidden !important;
207+
pointer-events: none !important;
208+
}
209+
210+
/* Override all media query rules for table scrolling when popup is open */
211+
body.popup-open .table-responsive-container,
212+
body.popup-open .table-responsive-container::-webkit-scrollbar {
213+
overflow: hidden !important;
214+
overflow-x: hidden !important;
215+
overflow-y: hidden !important;
216+
pointer-events: none !important;
217+
}
218+
219+
/* Override the specific media query rules that use !important */
220+
@media (max-width: 1199px) {
221+
body.popup-open .table-responsive-container {
222+
overflow: hidden !important;
223+
overflow-x: hidden !important;
224+
overflow-y: hidden !important;
225+
pointer-events: none !important;
226+
}
227+
}
228+
229+
@media (max-width: 768px) {
230+
body.popup-open .table-responsive-container {
231+
overflow: hidden !important;
232+
overflow-x: hidden !important;
233+
overflow-y: hidden !important;
234+
pointer-events: none !important;
235+
}
236+
}
237+
238+
@media (max-width: 480px) {
239+
body.popup-open .table-responsive-container {
240+
overflow: hidden !important;
241+
overflow-x: hidden !important;
242+
overflow-y: hidden !important;
243+
pointer-events: none !important;
244+
}
245+
}
246+
247+
/* Allow scrolling only within the popup */
248+
body.popup-open .row-details-popup-overlay,
249+
body.popup-open .row-details-popup {
250+
pointer-events: auto !important;
184251
}

0 commit comments

Comments
 (0)