diff options
| author | erdgeist <erdgeist@erdgeist.org> | 2026-08-11 00:44:31 +0200 |
|---|---|---|
| committer | erdgeist <erdgeist@erdgeist.org> | 2026-08-11 00:44:31 +0200 |
| commit | 40e2fae5f910d270ba18c52736179068cbe3333a (patch) | |
| tree | 6ee90d676ea1e84dc9a85f855fc112f37a601c51 | |
| parent | fe3e0a5ff6d74e9245c00be32e2506ed2df22b51 (diff) | |
Fix admin.css button states and table padding
| -rw-r--r-- | app/views/layouts/_nav_controls.html.erb | 3 | ||||
| -rw-r--r-- | public/stylesheets/admin.css | 64 |
2 files changed, 16 insertions, 51 deletions
diff --git a/app/views/layouts/_nav_controls.html.erb b/app/views/layouts/_nav_controls.html.erb index 70d5130c..66524044 100644 --- a/app/views/layouts/_nav_controls.html.erb +++ b/app/views/layouts/_nav_controls.html.erb | |||
| @@ -36,7 +36,8 @@ | |||
| 36 | <% end %> | 36 | <% end %> |
| 37 | 37 | ||
| 38 | <% if current_user %> | 38 | <% if current_user %> |
| 39 | <%= button_to logout_path, method: :delete, aria: { label: t(".log_out") }, title: t(".log_out") do %> | 39 | <%= button_to logout_path, method: :delete, form: { class: "button_to session_ending" }, |
| 40 | aria: { label: t(".log_out") }, title: t(".log_out") do %> | ||
| 40 | <%= icon("logout", library: "tabler", "aria-hidden": true) %> | 41 | <%= icon("logout", library: "tabler", "aria-hidden": true) %> |
| 41 | <% end %> | 42 | <% end %> |
| 42 | <% end %> | 43 | <% end %> |
diff --git a/public/stylesheets/admin.css b/public/stylesheets/admin.css index 716eb9e1..99067f5d 100644 --- a/public/stylesheets/admin.css +++ b/public/stylesheets/admin.css | |||
| @@ -95,20 +95,11 @@ th { | |||
| 95 | text-transform: lowercase; | 95 | text-transform: lowercase; |
| 96 | } | 96 | } |
| 97 | 97 | ||
| 98 | td { | ||
| 99 | padding-top: 10px; | ||
| 100 | padding-bottom: 5px; | ||
| 101 | padding-right: 10px; | ||
| 102 | } | ||
| 103 | /* table#revisions td only overrides padding-right, so its rows still | ||
| 104 | depend on this rule for vertical padding. table.node_table td resets | ||
| 105 | padding-top/bottom to 0 explicitly and does not depend on it. */ | ||
| 106 | |||
| 107 | input[type=text], | 98 | input[type=text], |
| 108 | input[type=password], | 99 | input[type=password], |
| 109 | textarea { | 100 | textarea { |
| 110 | font-size: 1rem; | 101 | font-size: 1rem; |
| 111 | font-family: Helvetica; | 102 | font-family: Helvetica, Arial, sans-serif; |
| 112 | border: 1px solid var(--field-border); | 103 | border: 1px solid var(--field-border); |
| 113 | border-radius: 2px; | 104 | border-radius: 2px; |
| 114 | } | 105 | } |
| @@ -378,15 +369,20 @@ form.button_to { | |||
| 378 | form.button_to input[type="submit"], | 369 | form.button_to input[type="submit"], |
| 379 | form.button_to button[type="submit"] { | 370 | form.button_to button[type="submit"] { |
| 380 | display: inline-flex; | 371 | display: inline-flex; |
| 372 | box-sizing: border-box; | ||
| 373 | border: 1px solid transparent; | ||
| 374 | border-radius: 2px; | ||
| 381 | align-items: center; | 375 | align-items: center; |
| 382 | gap: 0.5rem; | 376 | gap: 0.5rem; |
| 383 | -webkit-appearance: none; | 377 | -webkit-appearance: none; |
| 384 | appearance: none; | 378 | appearance: none; |
| 385 | background: none; | 379 | background: none; |
| 386 | border: none; | 380 | padding: 4px 12px; |
| 387 | padding: 0; | ||
| 388 | margin: 0; | 381 | margin: 0; |
| 389 | font: inherit; | 382 | line-height: 1.2; |
| 383 | font-family: inherit; | ||
| 384 | font-size: inherit; | ||
| 385 | font-weight: bold; | ||
| 390 | color: inherit; | 386 | color: inherit; |
| 391 | cursor: pointer; | 387 | cursor: pointer; |
| 392 | text-decoration: none; | 388 | text-decoration: none; |
| @@ -410,6 +406,7 @@ form.button_to.destructive button[type="submit"] { | |||
| 410 | background-color: var(--danger-surface); | 406 | background-color: var(--danger-surface); |
| 411 | } | 407 | } |
| 412 | 408 | ||
| 409 | #main_navigation form.button_to.session_ending button[type="submit"]:hover, | ||
| 413 | form.button_to.destructive input[type="submit"]:hover, | 410 | form.button_to.destructive input[type="submit"]:hover, |
| 414 | form.button_to.destructive button[type="submit"]:hover { | 411 | form.button_to.destructive button[type="submit"]:hover { |
| 415 | color: var(--on-solid); | 412 | color: var(--on-solid); |
| @@ -484,8 +481,7 @@ input[type="submit"]:hover { | |||
| 484 | } | 481 | } |
| 485 | 482 | ||
| 486 | #main_navigation a:hover, | 483 | #main_navigation a:hover, |
| 487 | #main_navigation label.nav_toggle:hover, | 484 | #main_navigation label.nav_toggle:hover { |
| 488 | #main_navigation form.button_to button:hover { | ||
| 489 | color: var(--surface); | 485 | color: var(--surface); |
| 490 | background-color: var(--text); | 486 | background-color: var(--text); |
| 491 | } | 487 | } |
| @@ -538,11 +534,6 @@ form.button_to svg { | |||
| 538 | background-color: var(--accent-surface); | 534 | background-color: var(--accent-surface); |
| 539 | } | 535 | } |
| 540 | 536 | ||
| 541 | #main_navigation form.button_to button:hover { | ||
| 542 | color: var(--on-solid); | ||
| 543 | background-color: var(--danger-solid); | ||
| 544 | } | ||
| 545 | |||
| 546 | #main_navigation a.nav_locale { | 537 | #main_navigation a.nav_locale { |
| 547 | font-size: 0.875rem; | 538 | font-size: 0.875rem; |
| 548 | font-weight: 700; | 539 | font-weight: 700; |
| @@ -635,10 +626,6 @@ form.button_to svg { | |||
| 635 | Tables | 626 | Tables |
| 636 | ============================================================ */ | 627 | ============================================================ */ |
| 637 | 628 | ||
| 638 | /* Generic fallback header row. Shadowed by table.node_table's own | ||
| 639 | tr.header (2rem) and duplicated (same values) by table#revisions's | ||
| 640 | own tr.header below. Applies as-is to #menu_item_list, and | ||
| 641 | table.user_table, none of which define their own tr.header. */ | ||
| 642 | table tr.header { | 629 | table tr.header { |
| 643 | height: 20px; | 630 | height: 20px; |
| 644 | text-align: left; | 631 | text-align: left; |
| @@ -662,9 +649,6 @@ table.node_table th.revision { | |||
| 662 | min-width: 4rem; | 649 | min-width: 4rem; |
| 663 | } | 650 | } |
| 664 | 651 | ||
| 665 | /* th.title's min-width is set to 4rem above and 12rem here -- the | ||
| 666 | later, equally-specific rule wins, so th.title ends up at 12rem and | ||
| 667 | the 4rem entry for it above is dead. Likely a copy/paste leftover. */ | ||
| 668 | table.node_table th.editor, | 652 | table.node_table th.editor, |
| 669 | table.node_table th.title { | 653 | table.node_table th.title { |
| 670 | min-width: 12rem; | 654 | min-width: 12rem; |
| @@ -682,8 +666,8 @@ table.node_table td, | |||
| 682 | table.assets_table td, | 666 | table.assets_table td, |
| 683 | table.user_table td, | 667 | table.user_table td, |
| 684 | table.events_table td { | 668 | table.events_table td { |
| 685 | padding-top: 8px; | 669 | padding-top: 12px; |
| 686 | padding-bottom: 8px; | 670 | padding-bottom: 12px; |
| 687 | padding-right: 25px; | 671 | padding-right: 25px; |
| 688 | padding-left: 0px; | 672 | padding-left: 0px; |
| 689 | min-width: 2rem; | 673 | min-width: 2rem; |
| @@ -1018,11 +1002,6 @@ table.revisions_table tr:hover { | |||
| 1018 | .flag_stack .flag_attention svg { color: var(--accent); } | 1002 | .flag_stack .flag_attention svg { color: var(--accent); } |
| 1019 | .flag_stack .flag_alert svg { color: var(--danger); } | 1003 | .flag_stack .flag_alert svg { color: var(--danger); } |
| 1020 | 1004 | ||
| 1021 | table.node_table td { | ||
| 1022 | padding-top: 0.8rem; | ||
| 1023 | padding-bottom: 0.8rem; | ||
| 1024 | } | ||
| 1025 | |||
| 1026 | .title_with_flags { | 1005 | .title_with_flags { |
| 1027 | display: flex; | 1006 | display: flex; |
| 1028 | align-items: flex-start; | 1007 | align-items: flex-start; |
| @@ -1211,20 +1190,12 @@ div.layout_row_content { | |||
| 1211 | margin: 0.5rem 0; | 1190 | margin: 0.5rem 0; |
| 1212 | } | 1191 | } |
| 1213 | 1192 | ||
| 1214 | .action_button, | 1193 | .action_button { |
| 1215 | form.button_to input[type="submit"], | ||
| 1216 | form.button_to button[type="submit"] { | ||
| 1217 | padding: 4px 12px; | 1194 | padding: 4px 12px; |
| 1218 | line-height: 1.2; | 1195 | line-height: 1.2; |
| 1219 | box-sizing: border-box; | 1196 | box-sizing: border-box; |
| 1220 | } | 1197 | } |
| 1221 | 1198 | ||
| 1222 | form.button_to input[type="submit"], | ||
| 1223 | form.button_to button[type="submit"] { | ||
| 1224 | border: 1px solid transparent; | ||
| 1225 | border-radius: 2px; | ||
| 1226 | } | ||
| 1227 | |||
| 1228 | .field_hint { | 1199 | .field_hint { |
| 1229 | display: block; | 1200 | display: block; |
| 1230 | margin-top: 2px; | 1201 | margin-top: 2px; |
| @@ -1607,7 +1578,6 @@ div#admin_layout { | |||
| 1607 | appearance: none; | 1578 | appearance: none; |
| 1608 | border: 1px solid var(--text); | 1579 | border: 1px solid var(--text); |
| 1609 | border-radius: 2px; | 1580 | border-radius: 2px; |
| 1610 | padding: 4px 12px; | ||
| 1611 | font-weight: bold; | 1581 | font-weight: bold; |
| 1612 | text-decoration: none; | 1582 | text-decoration: none; |
| 1613 | color: var(--text); | 1583 | color: var(--text); |
| @@ -2008,12 +1978,6 @@ input#menu_item_title { | |||
| 2008 | color: var(--text-muted); | 1978 | color: var(--text-muted); |
| 2009 | } | 1979 | } |
| 2010 | 1980 | ||
| 2011 | #menu_item_list td.menu_sort_handle svg { | ||
| 2012 | width: 1.1rem; | ||
| 2013 | height: 1.1rem; | ||
| 2014 | vertical-align: middle; | ||
| 2015 | } | ||
| 2016 | |||
| 2017 | #menu_item_list td.menu_sort_handle:active { | 1981 | #menu_item_list td.menu_sort_handle:active { |
| 2018 | cursor: grabbing; | 1982 | cursor: grabbing; |
| 2019 | } | 1983 | } |
