Uma mostra da formatação do nosso framework em ação, inspirada na simplicidade e elegância das melhores
documentações da web.
Layout e Sistema de Grid
O Zênite UI utiliza um sistema de grid responsivo de 12 colunas incrivelmente leve. Ele é construído para ser
intuitivo e ajusta-se automaticamente a diferentes tamanhos de ecrã, garantindo que o seu conteúdo se empilhe
perfeitamente em dispositivos móveis.
Como funciona
Utilize a classe .row para criar uma linha, e as classes .column-* (de 1 a 12) para
definir a largura de cada coluna. Por padrão, em ecrãs pequenos (smartphones), todas as colunas passam a ocupar
100% da largura para facilitar a leitura.
.column-12 (100%)
.column-6 (50%)
.column-6 (50%)
.column-4 (33.3%)
.column-4 (33.3%)
.column-4 (33.3%)
.column-3 (25%)
.column-3 (25%)
.column-3 (25%)
.column-3 (25%)
<div class="row">
<div class="column-12">Largura total (100%)</div>
</div>
<div class="row">
<div class="column-6">Metade da tela (50%)</div>
<div class="column-6">Metade da tela (50%)</div>
</div>
<div class="row">
<div class="column-4">Um terço (33.3%)</div>
<div class="column-4">Um terço (33.3%)</div>
<div class="column-4">Um terço (33.3%)</div>
<div class="row">
<div class="column-3">Um quarto (25%)</div>
<div class="column-3">Um quarto (25%)</div>
<div class="column-3">Um quarto (25%)</div>
<div class="column-3">Um quarto (25%)</div>
</div>
Basic Typography
Toda a tipografia utiliza a mesma hierarquia visual. A fonte base foi aumentada para facilitar a leitura em
todos os dispositivos.
<a href="javascript:void(0)">Sou uma hiperligação</a>
<div class="button-group">
<button class="button">Sou um botão principal</button>
<a href="javascript:void(0)" class="button button-outline">Sou um botão com outline</a>
</div>
Outros elementos de texto
O padrão de texto como negrito, itálico e sublinhado.
Texto destacado usando a tag mark.
Adicionando código inline usando a tag code.
Mostrando atalhos de teclado como ALT+F4 com a tag kbd.
<b>Texto em negrito</b>
<i>Texto em itálico</i>
<u>Texto sublinhado</u>
<mark>Texto destacado</mark>
<code>Código inline</code>
<kbd>ALT+F4</kbd>
Listas e Citações
Faça isto
Faça aquilo
Faça outra coisa
"A simplicidade é o último grau de sofisticação."
– Leonardo da Vinci
<ol>
<li>Faça isto</li>
<li>Faça aquilo</li>
<li>Faça outra coisa</li>
</ol>
<blockquote>
<p>"A simplicidade é o último grau de sofisticação."</p>
<p><cite>– Leonardo da Vinci</cite></p>
</blockquote>
Outros Elementos HTML
Existem outros elementos HTML que são formatados automaticamente no Zênite UI.
Caixa de Aviso (Notice box)
Esta é uma caixa de aviso. É muito útil para destacar pequenos pedaços de informação. Bom, não
é?
<p class="notice">Esta é uma caixa de aviso. É muito útil para destacar pequenos pedaços de informação. Bom, não é?</p>
Aside (Painel Lateral)
O painel lateral (aside) é perfeito para exibir informações secundárias, como links rápidos, anúncios ou
detalhes do autor, sem interromper o fluxo de leitura do conteúdo principal. O nosso framework lida com a
flutuação automaticamente, garantindo que em ecrãs de telemóvel ele se ajuste para ocupar toda a largura da tela
e manter a harmonia do layout.
<aside>
<p><b>Aside</b></p>
<p>Este é um <code>aside</code>, ele flutua para a direita e destaca-se ligeiramente do texto principal.</p>
</aside>
Este é um Article
A tag article deve ser usada para agrupar conteúdos independentes e autossuficientes, como uma postagem de
blog, uma notícia ou um comentário num fórum. O nosso framework garante que o espaçamento interno e externo
seja perfeito para uma leitura confortável em qualquer dispositivo.
<article>
<h3>Este é um Article</h3>
<p>A tag article deve ser usada para agrupar conteúdos independentes...</p>
</article>
Esta é uma Section
Sections (Seções) são excelentes para dividir uma página em múltiplas seções.
Utilize as seções para organizar o seu conteúdo em grupos temáticos lógicos. Cada seção geralmente contém o
seu próprio título e ajuda a estruturar páginas longas de forma mais clara e semântica, tanto para o
utilizador final como para os motores de busca (SEO).
<section>
<h3>Esta é uma Section</h3>
<p>Utilize as seções para organizar o seu conteúdo em grupos temáticos lógicos...</p>
</section>
Utilitários de Exibição (Display e Visibilidade)
Controle de forma rápida a exibição e a visibilidade de componentes com as classes utilitárias.
Ocultar e Mostrar Elementos (Display)
Utilize a classe .d-none para ocultar completamente um elemento (ele é removido do fluxo da
página) e .d-block ou .d-inline para torná-lo visível.
Diferente do d-none, as classes de visibilidade mantêm o espaço físico do elemento na tela, apenas
o tornam invisível. Use .v-hidden para esconder e .v-visible para mostrar.
O framework ajusta as imagens automaticamente. Na demonstração abaixo, usámos o nosso sistema de colunas para
colocar 2 imagens lado a lado. Basta substituir a URL no src="" pelas suas próprias imagens!
As tags <details> são excelentes para páginas de Perguntas Frequentes (FAQ). O Zênite UI
encarrega-se de criar caixas interativas, sem utilizar JavaScript.
O Zênite UI foi criado para que?
O nosso framework foi criado para utilizarmos nos nossos projetos.
Preciso de saber JavaScript para utilizar?
De forma alguma. Todos os componentes, incluindo esta própria sanfona, funcionam apenas com HTML5 puro e CSS
moderno.
<details>
<summary>O Zênite UI foi criado para que?</summary>
<p>O nosso framework foi criado para utilizarmos nos nossos projetos.</p>
</details>
Formulários (Forms) e Validação
Formulários são úteis para contatos ou inscrições. As mensagens de validação (sucesso ou erro) aparecem
automaticamente após a tentativa de envio do formulário.
<form id="form-demo" novalidate>
<!-- Agrupe cada campo dentro de uma div -->
<div>
<label>Nome Completo</label>
<input type="text" required placeholder="Insira o seu nome">
<div class="valid-feedback">Nome válido!</div>
<div class="invalid-feedback">Por favor, insira o seu nome.</div>
</div>
<!-- O botão tem de ser type="submit" -->
<button type="submit" class="button">Enviar</button>
</form>
Combobox(JS)
Uma caixa de pesquisa avançada com total controle visual, usando JavaScript nativo do nosso framework.
×
Yuri LucasCPF: 617.051.900-22
Gestor de TI
Yuri LucasCPF: 239.480.070-47
Dev Front-End
Yuri LucasCPF: 104.567.336-63
Analista de suporte
Yuri LucasCPF: 688.449.110-86
Dev Back-End
<label>Pesquisar Utilizador (Nome ou CPF):</label>
<div class="zf-combobox">
<input type="text" class="zf-combobox-input" placeholder="Escreva para pesquisar...">
<ul class="zf-combobox-list">
<!-- Item do Combobox (com ID para JS) -->
<li class="zf-combobox-item" data-id="1">
<div class="zf-cb-left">
<span class="zf-cb-name">Nome do Utilizador</span>
<span class="zf-cb-cpf">CPF: 000.000.000-00</span>
</div>
<span class="zf-cb-info">Cargo / Info</span>
</li>
<!-- Adicione mais <li> aqui... -->
</ul>
</div>
Calendário (Date Widget)
Um calendário incrivelmente responsivo construído com CSS Grid. Perfeito para usar como um painel
lateral em *dashboards* ou como base para um *Date Picker*.
Utilizamos a tag nativa do HTML5 <dialog> para criar pop-ups com um belo desfoque de fundo
(backdrop filter).
<button class="button" onclick="document.getElementById('meu-modal').showModal()">Abrir Modal</button>
<dialog id="meu-modal">
<div class="modal-header">
<h3>Confirmar Ação</h3>
<button class="close-modal" onclick="document.getElementById('meu-modal').close()">×</button>
</div>
<p>Tem a certeza de que deseja apagar este registo? Esta ação não pode ser desfeita e os dados serão permanentemente perdidos do servidor.</p>
<div class="button-group" style="margin-top: 1.5rem; margin-bottom: 0;">
<button class="button" onclick="document.getElementById('meu-modal').close()">Sim, Apagar</button>
<button class="button button-outline" onclick="document.getElementById('meu-modal').close()">Cancelar</button>
</div>
</dialog>
Alerta de sistema com diferentes tipos de mensagens.
2. Alertas de Sistema
Operação concluída com sucesso!
Atenção: A sua assinatura expira em 3 dias.
Erro ao conectar à base de dados.
<div class="alert alert-success">Operação concluída com sucesso!</div>
<div class="alert alert-warning">Atenção: A sua subscrição expira em 3 dias.</div>
<div class="alert alert-error">Erro ao conectar à base de dados.</div>
Navegação por abas com o Radio Buttons do HTML/CSS.
Configurações de Perfil
Aqui você pode alterar a sua fotografia (Avatar) e o seu nome de utilizador.
Privacidade e Segurança
Altere a sua palavra-passe ou ative a autenticação de dois fatores.
Dados de Faturação
A sua morada de faturação está incompleta.
<div class="tabs">
<input type="radio" id="tab1" name="mytabs" checked>
<label for="tab1">Perfil</label>
<div class="tab-content">
<h4>Configurações de Perfil</h4>
<p>Conteúdo da aba...</p>
</div>
<input type="radio" id="tab2" name="mytabs">
<label for="tab2">Segurança</label>
<div class="tab-content">
<h4>Privacidade e Segurança</h4>
<p>Conteúdo da aba...</p>
</div>
</div>
7. Paginação (Pagination)
Navegação para dividir conteúdos longos ou tabelas de dados. Inclui estados interativos para a página atual
(.active) e para botões inativos (.disabled).
<label>Upload de Documentos (PDF, JPG)</label>
<input type="file" accept="image/*,.pdf">
<label>Ajuste de Opacidade (Range)</label>
<input type="range" min="0" max="100" value="75">
9. Carrossel (CSS Scroll Snap)
Um carrossel moderno e responsivo com CSS nativo. Suporta navegação por toque (swipe) em dispositivos móveis e
arrasto na barra de rolagem em desktops.
Galeria de Imagens
Carrossel de Cartões (Cards)
Design UI/UX
Criamos interfaces intuitivas e esteticamente agradáveis para os seus utilizadores.