Accessibility: hover-only tooltips, misused tablist roles, and a layout table
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 4/5
- Thời gian dự kiến
- 3-5 ngày
- Mức phù hợp với người mới
- 58/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Ít trao đổi
- Công nghệ
- typescript
- Lĩnh vực
- accessibility, frontend
Hướng nghiên cứu
Bắt đầu bằng cách đọc các thành phần Svelte bị ảnh hưởng: ArchChat.svelte, ArchTracePanel.svelte, GeoScene.svelte, GeometryLab.svelte, FinetunePanel, TrainPanel, AttentionView và tab Info. Kiểm tra hành vi hiện có của con trỏ, tiêu điểm và lựa chọn trước khi thực hiện thay đổi. Hoàn thành nghĩa là các tooltip và nhãn hình cầu có thể được truy cập bằng bàn phím và cảm ứng, các control cung cấp trạng thái hợp lệ cho công nghệ hỗ trợ, và bảng chú giải ký hiệu có ngữ nghĩa description-list chính xác.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
Collected by an adversarial accessibility pass during feature 005. All pre-existing; none
blocks the documentation work, but each makes real information unreachable for some users.
1. Hover-only tooltips (highest impact)
Token probabilities, sphere labels and residual-norm bars are all onmousemove /
onmouseleave on role="note" elements with no tabindex:
ArchChat.svelte(reply tokens — the per-token probability and its top-5 alternatives)ArchTracePanel.svelte(token chips, norm bars)GeoScene.svelte(sphere dot labels,pointermove)
Keyboard users cannot reach them; touch users effectively cannot either. For the reply
tokens the tooltip is the only place the alternatives appear.
Fix: tabindex="0" plus onfocus/onblur mirroring showTip/hideTip; show the sphere
label on pointerdown as well as pointermove.
2. role="tablist" on things that are not tabs
GeometryLab.svelte field/layer segmented pickers carry role="tablist" but their children
have no role="tab", no aria-selected, and there is no tabpanel. A screen reader
announces a tab list containing nothing it recognises, and the active field/layer is never
conveyed. FinetunePanel/TrainPanel/AttentionView set role="tab"/aria-selected but
still have no tabpanel, aria-controls, or arrow-key handling.
Fix: role="radiogroup" + role="radio" aria-checked, or drop the roles and use
aria-pressed on the buttons (they already behave as toggles).
3. The Info tab's notation table is a layout table
Four columns alternating symbol/definition with no <thead>/<th>. It is a glossary, so
assistive tech reads two unrelated pairs as one row.
Fix: a <dl> with display: grid; grid-template-columns: auto 1fr auto 1fr — same visuals,
correct semantics, and it collapses to two columns on a phone for free.
Already fixed in feature 005
Equation blocks and tables are now keyboard-scrollable (tabindex="0" on the scroll
container, white-space: nowrap so overflow-x actually engages); <table display:block>
no longer strips table semantics; Explain titles are exposed as headings for heading
navigation; Explain summaries wrap on narrow screens.
- Ngôn ngữ chính
- TypeScript
- Star
- 2
- Fork
- 0
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Có Dockerfile hoặc tệp Docker Compose
- Không có mẫu pull request
- Không có hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của ContextLab/llm-geometry
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 70/100
-
Độ khó 4/5 3-5 ngày Mức phù hợp với người mới 52/100
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 35/100
-
getting startedĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 18/100
ContextLab/llm-geometry#1 · 9 bình luận ·
Tất cả issue của ContextLab/llm-geometry
Issue tương tự
-
Độ khó 2/5 Dưới một giờ Mức phù hợp với người mới 86/100
WilliamSmithEdward/xlide_vscode#1564 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
a2ui-project/a2ui#3809 ·
Maintainer thường phản hồi trong vòng 2 ngày
-
[Bug] A write skipped for exceeding the size limit leaves its finished temp file in the libraryĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 66/100
Maintainer thường phản hồi trong vòng 4 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 62/100
esphome/device-builder-frontend#2064 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
community first-timers-only good first issue hacktoberfest help wanted low hanging fruit up-for-grabs
Độ khó 1/5 Dưới một giờ Mức phù hợp với người mới 61/100
lingdojo/kana-dojo#33465 · 1 bình luận · 5 reaction ·
Maintainer thường phản hồi trong vòng 1 ngày