Propriedade Visibility

Última atualização: 2026-09-13

visibility Propriedade Visibility

A propriedade visibility controla se um elemento é visível. Sua principal diferença de display:none é que hidden ainda ocupa espaço no layout; o elemento simplesmente não é renderizado visualmente. O valor padrão, visible, mostra o elemento normalmente. A propriedade é herdada e é frequentemente usada para esconder elementos mantendo seu espaço.

Categoria
Valor Inicialvisible
HerdadoSim
Aplica-se Aall
Tipo de Animaçãodiscrete
Versão CSSCSS2
StatusPadrão

📝 Sintaxe

visibility: visible | hidden | collapse;

⚙️ Valores

ValorTipoDescrição
visible | hidden | collapsePalavra-chaveControla se o elemento é visível (hidden ainda ocupa espaço).

▶ Exemplo

Edite o código abaixo e veja o resultado ao vivo no playground:

🌐 Suporte dos Navegadores

Navegador ChromeChrome EdgeEdge FirefoxFirefox SafariSafari OperaOpera
visibility v1 v12 v1 v1 v1
Suportado em todos os principais navegadores
Dica: Um elemento visibility:hidden ainda ocupa espaço; display:none o remove do layout inteiramente.

❓ Perguntas Frequentes

QQual é a diferença entre visibility:hidden e display:none?
Avisibility:hidden torna um elemento invisível mantendo seu espaço original no layout; ele permanece no fluxo do documento e ainda é lido por leitores de tela. display:none remove o elemento do fluxo inteiramente, não ocupa espaço e o esconde dos leitores de tela. Use visibility:hidden para esconder preservando o espaço, por exemplo ao medir um layout ou aguardar conteúdo, e display:none para remover um elemento completamente.
QQual é a diferença entre visibility:hidden e opacity:0?
AAmbos escondem um elemento visualmente mantendo seu espaço, mas opacity:0 ainda permite cliques e eventos e suporta transições suaves, enquanto visibility:hidden para de responder a eventos do mouse, então os cliques passam através, e tem suporte de transição limitado. opacity também cria um novo contexto de empilhamento, enquanto visibility não afeta o layout dos filhos, e os filhos podem ser restaurados individualmente com visibility:visible. Escolha opacity para esmaecimentos, visibility para remoção real de interação.
QA visibility é herdada?
ASim. visibility é uma das poucas propriedades CSS herdadas: quando um pai é definido como hidden, seus filhos são ocultos por padrão, mas um filho pode se forçar visível com visibility:visible. Isso é útil para submenus e painéis expansíveis, onde você esconde o contêiner pai e então revela os filhos no hover sem tocar no estilo do próprio pai, mantendo a implementação simples e autocontida.
QA visibility pode ser transitada?
Avisibility é uma propriedade discreta, então as transições geralmente mudam bruscamente em vez de esmaecer. Um truque comum é fazer a transição junto com opacity: esmaecer opacity de 0 a 1 enquanto alterna visibility no final da animação. Isso produz efeitos limpos de fade-in e fade-out e é frequentemente usado para modais, tooltips e animações similares de mostrar/esconder, dando o mesmo acabamento das transições só de opacity enquanto mantém o elemento não interativo enquanto oculto.

📚 Tutoriais Relacionados

Web-Tutorial.com

Equipe Técnica Web-Tutorial

Uma plataforma de tutoriais mantida por diversos desenvolvedores. Cada tutorial é escrito e revisado por profissionais da área correspondente. Trabalhamos para manter nosso conteúdo preciso e confiável — se encontrar algum problema, avise-nos.

100%