--- title: '::after (:after)' slug: 'Web/CSS/::after' translation_of: 'Web/CSS/::after' ---
Em CSS, ::after
cria um pseudo-elemento que é o último filho do elemento selecionado. Muitas vezes é usado para adicionar e melhorar o conteúdo de um elemento como a propriedade {{cssxref("content")}}. É inline por padrão.
/* Adiciona uma seta após os links */ a::after { content: "
→"; }
{{csssyntax}}
O CSS3 introduziu a notação ::after
(com dois sinais de dois pontos) para distinguir pseudo-classes dos pseudo-elementos. Os navegadores também aceitam :after
, introduzido no CSS2.
Vamos criar duas classes: uma para parágrafos tediosos e uma para parágrafos excitantes. Podemos então marcar cada parágrafo adicionando um pseudo-elemento ao final dele.
<p class="boring-text">Here is some plain old boring text.</p> <p>Here is some normal text that is neither boring nor exciting.</p> <p class="exciting-text">Contributing to MDN is easy and fun. Just hit the edit button to add new live samples, or improve existing samples.</p>
.exciting-text::after { content: "<- now this *is* exciting!"; color: green; } .boring-text::after { content: "<- BORING!"; color: red; }
{{EmbedLiveSample('Uso_simples', 500, 150)}}
Podemos estilizar textos ou imagens na propriedade {{cssxref("content")}} praticamente de qualquer forma que quisermos.
<span class="ribbon">Observe onde a caixa de laranja está.</span>
.ribbon { background-color: #5BC8F7; } .ribbon::after { content: "Observe esta caixa laranja"; background-color: #FFBA10; border-color: black; border-style: dotted; }
{{EmbedLiveSample('Exemplos_decorativos', 450, 20)}}
O exemplo a seguir mostra o uso do ::after
pseudo-elemento em conjunto com a expressão CSS attr()
e um tributo data personalizado data-descr
para criar uma dica em forma de glossário feito em CSS puro. Verifique a visualização abaixo, ou veja este exemplo em página separada.
<p>Aqui está o exemplo ao vivo do código acima.<br /> Temos um pouco de <span data-descr="collection of words and punctuation">texto</span> aqui com algumas <span data-descr="small popups which also hide again">dicas</span>.<br /> Não seja tímido, passe o mouse por cima para dar uma <span data-descr="not to be taken literally">olhada</span>. </p>
span[data-descr] { position: relative; text-decoration: underline; color: #00F; cursor: help; } span[data-descr]:hover::after { content: attr(data-descr); position: absolute; left: 0; top: 24px; min-width: 200px; border: 1px #aaaaaa solid; border-radius: 10px; background-color: #ffffcc; padding: 12px; color: #000000; font-size: 14px; z-index: 1; }
{{EmbedLiveSample('Dicas', 450, 120)}}
Especificação | Status | Comentário |
---|---|---|
{{SpecName('CSS4 Pseudo-Elements', '#selectordef-after', '::after')}} | {{Spec2('CSS4 Pseudo-Elements')}} | Sem mudanças significativas em relação à especificação anterior. |
{{Specname("CSS3 Transitions", "#animatable-properties", "transitions on pseudo-element properties")}} | {{Spec2("CSS3 Transitions")}} | Permite transições em propriedades definidas em pseudo-elementos. |
{{Specname("CSS3 Animations", "", "animations on pseudo-element properties")}} | {{Spec2("CSS3 Animations")}} | Permite animações em propriedades definidas em pseudo-elementos. |
{{SpecName('CSS3 Selectors', '#gen-content', '::after')}} | {{Spec2('CSS3 Selectors')}} | Introduz a sintaxe de dois sinais de dois pontos. |
{{SpecName('CSS2.1', 'generate.html#before-after-content', '::after')}} | {{Spec2('CSS2.1')}} | Definição inicial, usando a sintaxe de um sinal de dois pontos. |
{{CompatibilityTable}}
Recurso | Chrome | Edge | Firefox (Gecko) | Internet Explorer | Opera | Safari (WebKit) |
---|---|---|---|---|---|---|
Suporte ao :after |
{{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatGeckoDesktop("1.0")}}[1] | 8.0 | {{CompatOpera("4")}} | 4.0 |
Suporte ao ::after |
{{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatGeckoDesktop("1.8")}}[1] | 9.0 | {{CompatOpera("7")}} | 4.0 |
Suporte à animações e transições | 26 | {{CompatVersionUnknown}} | {{CompatGeckoDesktop("2.0")}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} |
Recurso | Android | Edge | Firefox Mobile (Gecko) | IE Mobile | Opera Mobile | Safari Mobile |
---|---|---|---|---|---|---|
Suporte ao :after |
{{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
Suporte ao ::after |
{{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} | {{CompatUnknown}} |
Suporte à animações e transições | {{CompatVersionUnknown}} | {{CompatVersionUnknown}} | {{CompatGeckoMobile("4.0")}} | {{CompatNo}} | {{CompatNo}} | {{CompatNo}} |
[1] O Firefox anterior à versão 3.5 implementou apenas a versão CSS 2.0 de :after
. Não foram permitidos {{cssxref("position")}}, {{cssxref("float")}}, list-style-*
e algumas propriedades exibição. O Firefox 3.5 removeu estas restrições.