Skip to content

Commit 38d0f94

Browse files
fix: add dark mode support for table previews in Jupyter (#1167) (#1315)
Add CSS media query for prefers-color-scheme: dark to automatically adapt table preview styling to dark mode environments. Dark mode colors: - Table header: #4a4a4a background - Odd rows: #2d2d2d background, #e0e0e0 text - Even rows: #3d3d3d background, #e0e0e0 text - Primary key: #bd93f9 (purple accent) - Borders: #555555 Uses browser-native dark mode detection - no JavaScript or config needed. Light mode styling remains unchanged for backward compatibility. Fixes #1167 Co-authored-by: Claude Opus 4.5 <[email protected]>
1 parent 23c3d82 commit 38d0f94

File tree

1 file changed

+28
-0
lines changed

1 file changed

+28
-0
lines changed

src/datajoint/preview.py

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -164,6 +164,34 @@ def get_html_display_value(tup, name, idx):
164164
.djtooltip:hover .djtooltiptext {
165165
visibility: visible;
166166
}
167+
168+
/* Dark mode support */
169+
@media (prefers-color-scheme: dark) {
170+
.Table th{
171+
background: #4a4a4a; color: #ffffff; border:#555555 1px solid;
172+
}
173+
.Table td{
174+
border:#555555 1px solid;
175+
}
176+
.Table tr:nth-child(odd){
177+
background: #2d2d2d;
178+
color: #e0e0e0;
179+
}
180+
.Table tr:nth-child(even){
181+
background: #3d3d3d;
182+
color: #e0e0e0;
183+
}
184+
.djtooltip .djtooltiptext {
185+
background-color: #555555;
186+
color: #ffffff;
187+
}
188+
#primary {
189+
color: #bd93f9;
190+
}
191+
#nonprimary {
192+
color: #e0e0e0;
193+
}
194+
}
167195
</style>
168196
"""
169197
head_template = """<div class="djtooltip">

0 commit comments

Comments
 (0)