Includes parciais em HTML: ensaio defende fragmentos reutilizáveis direto de páginas comuns
Aprofundamento CEVIU
Aprofundamento
O ensaio parte de uma sessão do TPAC chamada "It's time for client side includes", em que Noam Rosenthal apresentou a proposta e o protótipo mais recentes, os Fragment Includes, que seguem o trabalho sobre declarative partial updates. A ideia é incluir arquivos servidos com o MIME type text/fragment e extensão canônica .fragment, fazendo streaming do conteúdo direto no HTML. O autor ressalta que a sintaxe pode mudar. Ele também cita o W3C "No Build Community Group", organizado por Ollie Williams, como sinal de que a demanda por sites simples sem etapa de build é real.
A crítica central é o MIME type próprio. Um .fragment é um trecho de HTML sem cabeçalho, que não abre sozinho como página. O autor propõe que algo como user-profile.html#content funcione: a página opta por ser incluível, por exemplo com uma nova tag <meta> listando os ids permitidos, e o navegador pega só o conteúdo interno do elemento com id="content". Ele reconhece as objeções conhecidas: parser e medo de buffering excessivo, opt-in explícito e CORS, e desempenho (incluir demais, baixar páginas 404). Sugere um modo de parser ativado só em includes, limitação a same-origin e pular o que fica fora do fragmento. Cita como paralelos o SVG com <view> e os includes de .md do Obsidian.
Por que isso importa
Para quem desenvolve front-end, a discussão mostra até onde o HTML puro poderia chegar sem bundler ou gerador de site. Se só .fragment passar, quem quiser a mesma peça como página e como trecho tende a servir o fragmento nos dois lugares, com requisição extra. É uma leitura de trade-off: o ensaio é uma defesa pessoal, não uma proposta em andamento nos navegadores.
Perguntas frequentes
O que são os Fragment Includes?
É uma proposta apresentada por Noam Rosenthal no TPAC, ligada ao trabalho de declarative partial updates. Ela permite incluir arquivos servidos como text/fragment, com extensão .fragment, e fazer streaming do conteúdo no HTML. A sintaxe ainda pode mudar.
Qual é a principal limitação apontada pelo autor?
A exigência de um MIME type próprio. Não dá para pegar uma página HTML comum e inserir parte dela em outra. O fragmento é um trecho sem cabeçalho, que não abre sozinho no navegador.
Como o autor imagina incluir trechos de páginas HTML comuns?
Usando algo como user-profile.html#content. A página opta por ser incluível, por exemplo com uma tag meta que lista ids permitidos. O navegador então inclui só o conteúdo interno do elemento com o id indicado.
Quais objeções existem a essa ideia?
O ensaio lista o parser e o receio de buffering excessivo, a dificuldade de saber se o documento aceitou ser incluído (CORS), e questões de desempenho, como baixar páginas 404. O autor sugere um modo de parser específico e limitar a same-origin.
Fontes
- blog.kizu.devfonte original
- Categoria
- CEVIU Web Dev
- Publicado
- 12 de novembro de 2026
- Editoria
- CEVIU Web Dev
