Selected revealjs tab fails contrast on narrow screens
Mantenedores costumam responder em até 1 dia
Ninguém assumiu esta issue ainda.
Avaliação
- Dificuldade
- 2/5
- Tempo estimado
- 1-3 horas
- Facilidade para iniciantes
- 78/100
- Tipo de issue
- Bug
- Clareza
- Claramente especificada
- Status de atividade
- Ativa
- Stack de tecnologia
- sass
- Domínio
- accessibility, frontend
Direção de pesquisa
Comece pelas linhas 39-49 de src/resources/formats/html/_quarto-rules-tabby.scss e pelas definições de cores de revealjs nas linhas 81 e 94 de src/resources/formats/revealjs/quarto.scss. Renderize o exemplo panel-tabset fornecido em um viewport de 320px e, em seguida, verifique se a aba selecionada atinge pelo menos um contraste de 3:1, inclusive com axe no exemplo de tabset do revealjs.
Escrita pelo modelo de indexação a partir do texto da issue.
Descrição
I have:
- searched the issue tracker for similar issues
- installed the latest version of Quarto CLI
- formatted my issue following the Markdown guide
Bug description
Below 30em, the selected tab gets background-color: $tabset-border-color (_quarto-rules-tabby.scss L39-L49). In revealjs, $tabset-border-color is $code-block-border-color, which is lighten($body-color, 60%) = #bbbbbb (L81, L94).
The tab text is $link-color #2a76dd. On #bbbbbb, the contrast is 2.31:1. The text is 40px, so WCAG 2.2 SC 1.4.3 requires 3:1. At wide viewports the selected tab is transparent, and it passes.
axe reports this on the quarto.org tabset example.
Steps to reproduce
---
format: revealjs
---
## Slide
::: {.panel-tabset}
### Tab A
Content A
### Tab B
Content B
:::
- Render the file.
- Open it in a 320px-wide viewport.
- Measure the selected tab text against its background.
Actual behavior
The selected tab text is #2a76dd on #bbbbbb, at 2.31:1.
Expected behavior
The selected tab gives at least 3:1. For example, use a lighter fill, or use $body-color text on the fill (#222 on #bbb is 8.29:1).
AI helped investigate this issue. The investigation used a local clone of quarto-cli (see "Using AI tools to investigate" in CONTRIBUTING.md).
Your environment
- IDE: Positron 1.134.0
- OS: macOS 26.6.2 (build 25G83)
Quarto check output
Quarto 1.11.4
[✓] Checking environment information...
Quarto cache location: /Users/charlottewickham/Library/Caches/quarto
[✓] Checking versions of quarto binary dependencies...
Pandoc version 3.10.0: OK
Dart Sass version 1.101.0: OK
Deno version 2.7.14: OK
Typst version 0.15.1: OK
[✓] Checking versions of quarto dependencies......OK
[✓] Checking Quarto installation......OK
Version: 1.11.4
Path: /Applications/quarto/bin
[✓] Checking tools....................OK
TinyTeX: v2026.04
Chrome Headless Shell: 150.0.7871.115
VeraPDF: 1.28.2
[✓] Checking LaTeX....................OK
Using: TinyTex
Path: /Users/charlottewickham/Library/TinyTeX/bin/universal-darwin
Version: 2026
[✓] Checking Chrome Headless....................OK
Using: Chrome Headless Shell installed by Quarto
Path: /Users/charlottewickham/Library/Application Support/quarto/chrome-headless-shell/chrome-headless-shell-mac-arm64/chrome-headless-shell
Version: 150.0.7871.115
[✓] Checking basic markdown render....OK
[✓] Checking R installation...........OK
Version: 4.6.0
Path: /Library/Frameworks/R.framework/Versions/4.6/Resources
LibPaths:
- /Users/charlottewickham/Library/R/arm64/4.6/library
- /Library/Frameworks/R.framework/Versions/4.6/Resources/library
knitr: 1.51
rmarkdown: 2.31
[✓] Checking Knitr engine render......OK
[✓] Checking Python 3 installation....OK
Version: 3.12.2
Path: /Users/charlottewickham/.pyenv/versions/3.12.2/bin/python3
Jupyter: 5.9.1
Kernels: python3
[✓] Checking Jupyter engine render....OK
[✓] Checking Julia installation...
- Linguagem predominante
- JavaScript
- Estrelas
- 6.1k
- Forks
- 478
- Merge médio
- 17h 36min
- PRs com merge (30d)
- 139
Preparar o ambiente
- Sem Dockerfile nem arquivo Docker Compose
- Tem um modelo de pull request
- Ler o guia de contribuição
Primeiros passos
- Leia a issue inteira e depois o guia de contribuição do projeto.
- Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
- Faça um fork do repositório e trabalhe em uma branch.
- Abra um pull request que referencie o número da issue.
Mais de quarto-dev/quarto-cli
-
enhancement good-first-issue localization
Dificuldade 2/5 1-2 dias Facilidade para iniciantes 76/100
quarto-dev/quarto-cli#15289 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
bug engines-jupyter
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 90/100
quarto-dev/quarto-cli#15281 ·
Mantenedores costumam responder em até 1 dia
-
enhancement localization
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 65/100
quarto-dev/quarto-cli#15268 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
-
html maintenance
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 84/100
quarto-dev/quarto-cli#15261 ·
Mantenedores costumam responder em até 1 dia
-
enhancement websites
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
quarto-dev/quarto-cli#15255 · 1 comentário ·
Mantenedores costumam responder em até 1 dia
Todas as issues de quarto-dev/quarto-cli
Issues semelhantes
-
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 82/100
Mantenedores costumam responder em até 1 dia
-
help wanted Idea 💡 wdio-cli
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 66/100
webdriverio/webdriverio#16361 · 2 comentários ·
Mantenedores costumam responder em até 1 dia
-
clientV2: Application Info header separators show as missing-character boxes without a CJK fontAbertabug new-client
Dificuldade 1/5 1-3 horas Facilidade para iniciantes 88/100
NUWCDIVNPT/stig-manager#2285 ·
Mantenedores costumam responder em até 1 dia
-
Dificuldade 1/5 Menos de uma hora Facilidade para iniciantes 88/100
Fei2411/DeepSeek-Bot#922 · 1 reação ·
-
Workers AI integration drops output of non-streaming chat responses in the OpenAI format (`choices`)AbertaBug Cloudflare Workers Spans
Dificuldade 2/5 1-3 horas Facilidade para iniciantes 78/100
getsentry/sentry-javascript#26120 · 1 comentário ·
Mantenedores costumam responder em até 1 dia