Clique nos links para ver a mudança de cor!
:link
- Aplica estilo a links ainda não visitados:visited
- Aplica estilo a links já visitados pelo usuário/* Quando o mouse passa por cima */
a:hover {
background: #e3f2fd; /* Fundo azul claro */
color: #004085; /* Azul mais escuro */
transform: translateY(-2px); /* Move 2px para cima */
box-shadow: 0 2px 8px rgba(0,0,0,0.1); /* Sombra sutil */
transition: all 0.3s ease; /* Transição suave */
}
/* No momento exato do clique */
a:active {
color: #dc3545; /* Vermelho quando clicado */
transform: translateY(0); /* Volta à posição original */
}
/* Campos habilitados */
input:enabled {
border-color: #28a745; /* Verde */
background: white; /* Fundo branco */
cursor: text; /* Cursor de texto */
}
/* Campos desabilitados */
input:disabled {
background-color: #e9ecef; /* Cinza */
border-color: #ced4da; /* Borda cinza */
cursor: not-allowed; /* Cursor proibido */
}
/* Checkbox ou radio marcado */
input:checked + label {
color: #28a745; /* Verde para o label */
font-weight: bold; /* Texto em negrito */
transform: scale(1.05); /* Leve aumento de tamanho */
}
/* Adiciona conteúdo ANTES */
p::before {
content: "👉 "; /* Ícone emoji */
color: #28a745; /* Verde */
font-weight: bold; /* Negrito */
margin-right: 5px; /* Espaço à direita */
}
Este texto tem um ícone antes!
/* Adiciona conteúdo DEPOIS */
p::after {
content: " ✨"; /* Ícone emoji */
color: #ffc107; /* Amarelo */
animation: pulse 2s infinite; /* Animação */
}
Este texto tem um ícone animado depois!
/* Estiliza apenas a primeira letra */
p::first-letter {
font-size: 3em; /* 3x maior */
color: #667eea; /* Azul */
float: left; /* Flutua à esquerda */
line-height: 1; /* Altura da linha */
margin-right: 5px; /* Espaço à direita */
font-weight: bold; /* Negrito */
}
Esta primeira letra é maior e colorida, criando um efeito de capitular como nos livros antigos.
/* Estiliza apenas a primeira linha */
p::first-line {
font-weight: bold; /* Negrito */
color: #764ba2; /* Roxo */
text-transform: uppercase; /* Maiúsculas */
letter-spacing: 1px; /* Espaçamento das letras */
}
Esta primeira linha aparece em negrito e maiúsculas, enquanto o resto do texto permanece normal. Este efeito é muito útil para destacar o início de parágrafos importantes.
/* Quando o texto é selecionado */
::selection {
background: #fff3cd; /* Fundo amarelo claro */
color: #856404; /* Texto marrom */
}
Selecione este texto com o mouse para ver o efeito personalizado do ::selection! Arraste o mouse sobre estas palavras.
/* Personaliza marcadores de lista */
li::marker {
content: "🌟 "; /* Estrela como marcador */
font-size: 1.2em; /* Maior que o texto */
}
Tipo | Símbolo | Exemplo | Quando Usar | Resultado |
---|---|---|---|---|
Pseudoclasse | : |
a:hover |
Estados dinâmicos | Muda com interação |
Pseudoelemento | :: |
p::first-line |
Partes específicas | Estiliza parte do elemento |
:hover
, :visited
, :checked
::before
, ::selection
content
em ::after
?:hover
e :active
?li::marker
personaliza listas?::first-letter
em vez de estilizar manualmente?:hover
, :active
e transition
::marker
personalizado e ícones únicos::first-letter
estilo revista e ::first-line
destacada::selection
com cores que combinem com o design da página:enabled
, :disabled
, :focus
e :checked