Selected revealjs tab fails contrast on narrow screens

Aberta Para iniciantes
#14,963 0 comentários 0 reações 0 responsáveis Ver no GitHub

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

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

accessibility revealjs themes

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

:::
  1. Render the file.
  2. Open it in a 320px-wide viewport.
  3. Measure the selected tab text against its background.

Actual behavior

The selected tab text is #2a76dd on #bbbbbb, at 2.31:1.

Blue Tab A text on grey background

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

Primeiros passos

  1. Leia a issue inteira e depois o guia de contribuição do projeto.
  2. Comente na issue dizendo que vai assumir — evita que duas pessoas façam o mesmo trabalho.
  3. Faça um fork do repositório e trabalhe em uma branch.
  4. Abra um pull request que referencie o número da issue.

Mais de quarto-dev/quarto-cli

Todas as issues de quarto-dev/quarto-cli

Issues semelhantes

Mais issues de JavaScript

Receba novas issues na sua caixa de entrada

Um resumo curto de issues do GitHub para quem está começando.