Pular para o conteúdo principal

Questão de Engenharia de Software — W3C, WCAG e WAI — FCC 2025

Engenharia de SoftwareW3C, WCAG e WAI
Código
fc150520
Banca
FCC
Órgão
TRT 15
Ano
2025
Cargo
TJ TRT15
Uma equipe de desenvolvimento está criando um site responsivo e acessível que utiliza, entre outros recursos, HTML5, CSS3, JSF e JQuery. A meta é garantir que o site seja adaptável a diferentes dispositivos e tamanhos de tela, atenda aos padrões de acessibilidade (WCAG 2.1) e possua menus dinâmicos e conteúdo Interativo carregado de forma assíncrona.   A estratégia que melhor Implementa os requisitos é usar
  1. AJSF para ajustar automaticamente o layout responsivo, HTML5 para validação acessível, e CSS3 para estilização básica sem media queries.
  2. BCSS3 para media queries e animações responsivas, HTML5 para estruturar elementos semânticos acessíveis e jQuery para carregar oonleúdo assíncrono e manipular menus dinâmicos.
  3. CjQuery e CSS3 para carregar dinamicamente lodo o conteúdo e criar menus interativos, deixando HTML5 apenas para estruturação básica.
  4. DJSF para criar os menus dinâmicos e JQuery para ajustar automaticamente o layout com base no tamanho da tela.
  5. EHTML5 para criar menus interativos CSS3 para ajustar dinamicamente os tamanhos de tela, e JSF para manipular eventos e carregar conteúdo assíncrono.
Revelar gabarito e comentário

GabaritoB — CSS3 para media queries e animações responsivas, HTML5 para estruturar elementos semânticos acessíveis e jQuery para carregar oonleúdo assíncrono e manipular menus dinâmicos.

Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.

Desenvolvimento Web: Responsividade, Acessibilidade e Interatividade

Gabarito: letra B. A estratégia correta combina CSS3 para media queries e animações responsivas, HTML5 para estrutura semântica acessível e jQuery para carregamento assíncrono e manipulação de menus dinâmicos — exatamente o que a alternativa B descreve. Essa é a divisão de responsabilidades consagrada no desenvolvimento web: CSS cuida da apresentação e adaptação visual, HTML da estrutura e semântica (base da acessibilidade), e JavaScript/jQuery do comportamento dinâmico e da comunicação assíncrona com o servidor.

Para entender por que essa é a resposta, é preciso dominar o papel de cada tecnologia. O HTML5 é a linguagem de marcação que define a estrutura do conteúdo — e, com seus elementos semânticos (<header>, <nav>, <main>, <article>, <footer>), fornece a base para a acessibilidade, pois leitores de tela e outras tecnologias assistivas dependem dessa semântica para interpretar a página. O CSS3 é a folha de estilo responsável pela apresentação visual; as media queries são o mecanismo que permite adaptar o layout a diferentes tamanhos de tela (responsividade), e as animações/transições CSS enriquecem a experiência sem sobrecarregar o JavaScript. O jQuery (uma biblioteca JavaScript) é a ferramenta clássica para manipular o DOM — criar menus dinâmicos, alternar classes, animar elementos — e para realizar requisições assíncronas (AJAX), carregando conteúdo sem recarregar a página. Já o JSF (JavaServer Faces) é um framework de interface de usuário para aplicações Java EE, voltado para a construção de componentes de interface no servidor — não é a ferramenta adequada para responsividade, animações ou manipulação dinâmica no cliente.

A acessibilidade (WCAG 2.1) é alcançada principalmente pela combinação de HTML semântico (estrutura correta, atributos ARIA quando necessário, textos alternativos) e CSS que não comprometa a legibilidade (contraste, tamanho de fonte, foco visível). O jQuery, ao manipular o DOM, deve preservar a acessibilidade (por exemplo, gerenciando o foco e anunciando mudanças de conteúdo). A responsividade, por sua vez, é essencialmente uma questão de CSS: media queries, unidades relativas (%, em, rem, vw/vh), Flexbox e Grid. O carregamento assíncrono é função do JavaScript (AJAX/fetch), que o jQuery simplifica com $.ajax().

A pegadinha desta questão está em atribuir a tecnologias erradas funções que não lhes cabem: usar JSF para layout responsivo, jQuery para ajustar tamanhos de tela, ou HTML5 para criar menus interativos. A banca testa se o candidato conhece a separação de responsabilidades entre as camadas da web. Guarde o trio: HTML = estrutura/semântica, CSS = apresentação/responsividade, JavaScript/jQuery = comportamento/interatividade/assíncrono. É exatamente esse critério que separa as alternativas.

1HTML5
Estrutura e semântica
Base da acessibilidade (WCAG)
2CSS3
Apresentação visual
Media queries (responsividade)
Animações e transições
3JavaScript/jQuery
Comportamento dinâmico
Menus interativos
Requisições assíncronas (AJAX)
4JSF
Framework Java EE (servidor)
Não é para responsividade
Não é para interatividade no cliente
Desenvolvimento web
LEVELsoulevel.com.br
Desenvolvimento web: HTML5 (Estrutura e semântica, Base da acessibilidade (WCAG)); CSS3 (Apresentação visual, Media queries (responsividade), Animações e transições); JavaScript/jQuery (Comportamento dinâmico, Menus interativos, Requisições assíncronas (AJAX)); JSF (Framework Java EE (servidor), Não é para responsividade, Não é para interatividade no cliente)

Alternativa A — ❌ Incorreta

Atribui ao JSF a função de ajustar automaticamente o layout responsivo — o que é papel do CSS (media queries). Além disso, diz que o CSS3 deve ser usado "sem media queries", o que inviabiliza a responsividade. O HTML5 até pode contribuir para validação acessível (atributos como required, type), mas a alternativa erra ao negar as media queries e ao colocar o JSF como responsável pelo layout.

Alternativa B — ✅ Correta ⟵ GABARITO

Esta alternativa espelha exatamente a divisão correta de responsabilidades: CSS3 para media queries e animações responsivas (adaptação a diferentes telas), HTML5 para estruturar elementos semânticos acessíveis (base da acessibilidade WCAG) e jQuery para carregar conteúdo assíncrono e manipular menus dinâmicos (interatividade e AJAX). Cada tecnologia é usada para o que é mais adequada.

Alternativa C — ❌ Incorreta

Diz que jQuery e CSS3 devem carregar dinamicamente todo o conteúdo e criar menus interativos, deixando o HTML5 apenas para estruturação básica. O erro está em atribuir ao CSS3 a função de carregar conteúdo dinamicamente — isso é função do JavaScript/jQuery (AJAX). O CSS não carrega conteúdo; ele apenas estiliza. Além disso, o HTML5 não é "apenas estruturação básica": sua semântica é essencial para a acessibilidade.

Alternativa D — ❌ Incorreta

Atribui ao JSF a criação de menus dinâmicos (função do JavaScript/jQuery) e ao jQuery o ajuste automático do layout com base no tamanho da tela (função do CSS com media queries). Inverte completamente os papéis: JSF é framework de servidor, não de interatividade no cliente; jQuery não é ferramenta de responsividade.

Alternativa E — ❌ Incorreta

Atribui ao HTML5 a criação de menus interativos (função do JavaScript/jQuery), ao CSS3 o ajuste dinâmico dos tamanhos de tela (que é feito com media queries, mas o CSS não "ajusta dinamicamente" no sentido de lógica — é declarativo) e ao JSF a manipulação de eventos e carregamento assíncrono (função do JavaScript/jQuery). A alternativa mistura as responsabilidades de forma incorreta.

Gabarito: letra B

Link permanente: /questoes/fc150520