Site: the bench table's desktop row is six columns (the class v4 cost and the date move under the card name as the muted second line), the card layout below 1100 px, the wrapper scrolls as a safety (the overlap gate read the eight-column row clipped at every desktop width)
Co-Authored-By: Claude Fable 5.1 <noreply@anthropic.com>
This commit is contained in:
parent
33549c3dcc
commit
ea9b933662
2 changed files with 20 additions and 21 deletions
|
|
@ -448,18 +448,17 @@ for (const [file, active] of PAGES) {
|
|||
if (r.note) parts.push('<b>Note</b> ' + esc(r.note));
|
||||
return parts.map(x => '<span class="d">' + x + '</span>').join('');
|
||||
};
|
||||
const heads = [['Card', 'card', 'text'], ['MH/s', 'mh_s', 'num'], ['MH per wall watt', 'mh_per_w', 'num'], ['Watts', 'watts', 'num'], ['Class v4 cost', 'v4', 'text'], ['Tuned', 'tuned', 'text'], ['Date', 'date', 'text'], ['', 'more', 'none']];
|
||||
const heads = [['Card', 'card', 'text'], ['MH/s', 'mh_s', 'num'], ['MH per wall watt', 'mh_per_w', 'num'], ['Watts', 'watts', 'num'], ['Tuned', 'tuned', 'text'], ['', 'more', 'none']];
|
||||
const render = (list, id) => {
|
||||
const body = list.map((r, i) => {
|
||||
const [effHtml, effV] = effCell(r); const [tcls, tlabel] = tunedState(r);
|
||||
const sub = '<span class="gen">class v4 ' + esc(shortV4(r)) + ' <span class="dot">\u00B7</span> <span class="date">' + esc(r.date) + '</span></span>';
|
||||
const cells = [
|
||||
['lead', r.card, esc(r.card)],
|
||||
['lead', r.card, esc(r.card) + sub],
|
||||
['big tnum', r.mh_s, esc(r.mh_s_display || fmt(r.mh_s))],
|
||||
['tnum effc', effV, effHtml],
|
||||
['quiet tnum', r.watts ?? -1, r.watts_display ? esc(r.watts_display) + ' W' : (r.watts == null ? 'not read' : esc(fmt(r.watts)) + ' W' + (r.watt_basis === 'chip' ? ' <span class="basis">chip, not wall</span>' : ''))],
|
||||
['quiet', shortV4(r), esc(shortV4(r))],
|
||||
['pillc', tlabel, '<span class="pill state ' + tcls + '">' + tlabel + '</span>'],
|
||||
['date', r.date, esc(r.date)],
|
||||
['morec', '', '<button type="button" class="more" aria-expanded="false" aria-controls="' + id + '-d' + i + '">Details</button>'],
|
||||
];
|
||||
return '<tr class="row">' + cells.map(([c, v, h]) => `<td class="${c}" data-v="${esc(String(v))}">${h}</td>`).join('') + '</tr>' +
|
||||
|
|
@ -493,7 +492,7 @@ for (const [file, active] of PAGES) {
|
|||
.lede{font-size:18px;line-height:1.5;color:var(--bone);margin:0 0 var(--s-4)}
|
||||
.grp{font:500 10px/1.4 var(--mono);letter-spacing:.1em;text-transform:uppercase;color:var(--ash);margin:var(--s-5) 0 10px;padding-bottom:8px;border-bottom:1px solid var(--line)}
|
||||
details.grp summary{cursor:pointer;list-style:none}details.grp summary::-webkit-details-marker{display:none}details.grp summary::after{content:" \\u25BE";opacity:.6}details.grp[open] summary::after{content:" \\u25B4"}
|
||||
.tbl.bench2wrap{overflow:visible;border:0;background:none;border-radius:0;max-width:100%}
|
||||
.tbl.bench2wrap{overflow-x:auto;border:0;background:none;border-radius:0;max-width:100%}
|
||||
table.bench2{min-width:0;width:100%;border-collapse:collapse;font-size:14px;line-height:1.4}
|
||||
table.bench2 th{font:500 10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ash);text-align:left;padding:0 12px 10px;border-bottom:1px solid var(--line);white-space:nowrap}
|
||||
table.bench2 th .sort{all:unset;cursor:pointer;font:inherit;color:inherit;letter-spacing:inherit;text-transform:inherit;padding-bottom:3px;border-bottom:2px solid transparent}
|
||||
|
|
@ -502,28 +501,28 @@ table.bench2 th[aria-sort="descending"] .sort,table.bench2 th[aria-sort="ascendi
|
|||
table.bench2 th[aria-sort="descending"] .sort::after{content:" \\u2193";opacity:1;color:var(--ember)}table.bench2 th[aria-sort="ascending"] .sort::after{content:" \\u2191";opacity:1;color:var(--ember)}
|
||||
table.bench2 tr.row td{height:56px;padding:0 12px;border-bottom:1px solid var(--line);background:none;vertical-align:middle;white-space:nowrap;color:var(--ink-2)}
|
||||
table.bench2 tr.row:hover td{background:var(--hover)}
|
||||
table.bench2 td.lead{white-space:normal;min-width:200px;color:var(--bone)}
|
||||
table.bench2 td.lead{white-space:normal;min-width:220px;color:var(--bone);padding-top:8px;padding-bottom:8px}
|
||||
table.bench2 td.lead .cardname{display:inline-flex;align-items:center;gap:10px}
|
||||
table.bench2 td.lead .gen{display:block;font:12px var(--mono);color:var(--ash);letter-spacing:.02em;margin-top:3px}table.bench2 td.lead .gen .dot{color:var(--line-2);margin:0 4px}
|
||||
table.bench2 td.big{font:600 22px/1 var(--f-display,var(--f-sans));color:var(--bone);font-variant-numeric:tabular-nums}
|
||||
table.bench2 td.tnum{font-variant-numeric:tabular-nums}
|
||||
table.bench2 .eff{font:500 15px/1 var(--f-sans);color:var(--ink-2)}table.bench2 .eff.best{color:var(--ember-text,var(--ember));font-weight:600}
|
||||
table.bench2 .hollow{color:var(--ash)}
|
||||
table.bench2 td.quiet{color:var(--ash);font-size:13px}table.bench2 .basis{font:10px var(--mono);letter-spacing:.06em;text-transform:uppercase;color:var(--ash);margin-left:6px}
|
||||
table.bench2 .pill.state{padding:5px 8px;font-size:9px}table.bench2 .pill.state.tuned{color:var(--ember-text,var(--ember));border-color:color-mix(in srgb,var(--ember) 35%,transparent);background:color-mix(in srgb,var(--ember) 8%,transparent)}table.bench2 .pill.state.stock{color:var(--ash)}table.bench2 .pill.state.nolever{color:var(--ash);border-style:dashed}
|
||||
table.bench2 td.date{font:12px var(--mono);color:var(--ash);letter-spacing:.02em}
|
||||
table.bench2 button.more{all:unset;cursor:pointer;font:500 10px/1.4 var(--mono);letter-spacing:.08em;text-transform:uppercase;color:var(--ash);padding:6px 0;border-bottom:1px solid var(--line-2)}table.bench2 button.more:hover{color:var(--bone)}
|
||||
table.bench2 tr.detail td{padding:12px 12px 16px;border-bottom:1px solid var(--line);font-size:13px;line-height:1.55;color:var(--ash);white-space:normal;overflow-wrap:anywhere}
|
||||
table.bench2 tr.detail .d{display:block;margin:0 0 4px}table.bench2 tr.detail b{color:var(--ink-2);font-weight:600;margin-right:6px}
|
||||
@media(max-width:720px){
|
||||
@media(max-width:1100px){
|
||||
table.bench2,table.bench2 tbody,table.bench2 tr.detail,table.bench2 tr.detail td{display:block}
|
||||
table.bench2 thead{display:none}
|
||||
table.bench2 tr.row{display:grid;grid-template-columns:minmax(0,1fr) minmax(0,1fr) auto;grid-template-areas:"lead lead big" "eff eff eff" "w v4 pill" "date date more";gap:4px 12px;padding:10px 0;min-height:44px;border-bottom:1px solid var(--line);align-items:center}
|
||||
table.bench2 tr.row{display:grid;grid-template-columns:minmax(0,1fr) auto;grid-template-areas:"lead big" "eff eff" "w pill" "more more";gap:4px 12px;padding:10px 0;min-height:44px;border-bottom:1px solid var(--line);align-items:center}
|
||||
table.bench2 tr.row td{display:block;height:auto;padding:0;border:0;white-space:normal;min-width:0}
|
||||
table.bench2 td.lead{grid-area:lead}table.bench2 td.lead .cardname{display:flex;align-items:center;gap:8px}table.bench2 td.lead .cardname .badge{flex:none}
|
||||
table.bench2 td.big{grid-area:big;font-size:20px;text-align:right;white-space:nowrap}
|
||||
table.bench2 td.effc{grid-area:eff;font-size:13px}table.bench2 td.effc .eff::before,table.bench2 td.effc .hollow::before{content:"MH per wall watt ";color:var(--ash);font-weight:400}
|
||||
table.bench2 td.quiet.tnum{grid-area:w}table.bench2 td.quiet:not(.tnum){grid-area:v4}table.bench2 td.pillc{grid-area:pill;text-align:right}
|
||||
table.bench2 td.date{grid-area:date}table.bench2 td.morec{grid-area:more;text-align:right}
|
||||
table.bench2 td.quiet.tnum{grid-area:w}table.bench2 td.pillc{grid-area:pill;text-align:right}
|
||||
table.bench2 td.morec{grid-area:more;text-align:right}
|
||||
table.bench2 tr.detail td{padding:8px 0 14px}
|
||||
}
|
||||
</style>`;
|
||||
|
|
|
|||
File diff suppressed because one or more lines are too long
Loading…
Reference in a new issue