Gerador de Tabelas Responsivas

Tabelas que viram cards empilhados no mobile, sem JavaScript.

Componentes
ProdutoCategoriaPreçoEstoque
Teclado mecânicoPeriféricosR$ 34912
Monitor 27"VídeoR$ 1.2994
Mouse sem fioPeriféricosR$ 12927
 estilo.css

Propriedades CSS utilizadas

data-label + ::before

Cada célula guarda o nome da coluna em um atributo data-label; no modo mobile, um pseudo-elemento ::before exibe esse rótulo antes do valor, simulando os cabeçalhos que desapareceram.

display: block no modo mobile

Ao trocar table/tr/td para display: block, cada linha passa a empilhar verticalmente como um card, em vez de manter a grade tabular original.

Perguntas frequentes

Preciso duplicar o conteúdo em HTML e CSS?

Sim, apenas o atributo data-label precisa repetir o texto do cabeçalho em cada célula — é a única duplicação necessária, sem JavaScript.

Essa técnica funciona com tabelas muito grandes?

Funciona bem até um número moderado de colunas; para tabelas com muitas colunas, considere também permitir rolagem horizontal como alternativa.

Existe alternativa sem pseudo-elemento?

Sim, é possível duplicar o rótulo em um real dentro da célula, o que melhora a seleção de texto mas aumenta o HTML.