Fiquei 17 anos sem me atualizar sobre text-decoration. Em 2008, fiz um post sobre o uso dessa propriedade em links que é exatamente o que eu sabia até semana passada.
Para quem não está ligando o nome à pessoa, text-decoration é a propriedade dos sublinhados e textos riscados, usos mais recorrentes desse recurso.
Atualmente, temos as seguintes propriedades para personalizar o traço:
- text-decoration-line
- Esta é a principal propriedade porque é a que faz aparecer algum traço: underline, overline ou line-through. Você pode escolher um, dois ou os três. Esta propriedade pode ser agrupada em
text-decoration, inclusive se escolher mais de um valor. - text-decoration-color
- Gostei muito de descobrir isso porque sou da época em que a gente precisava usar borda para fazer sublinhado colorido. Caso a cor não seja especificada, o traço será da mesma cor do texto. Esta propriedade pode ser agrupada em
text-decoration. - text-decoration-style
solidé uma linha reta;doublesão duas linhas retas;dottedé uma linha pontilhada;dashedé uma linha tracejada;wavyé uma linha ondulada. Esta propriedade pode ser agrupada emtext-decoration.- text-decoration-thickness
- Se quiser mudar a espessura do traço, pode colocar um valor em pixels ou porcentagem. Porcentagem é melhor porque fica proporcional ao tamanho do texto, assim você não terá uma linha muito fina num texto grande ou vice-versa. De acordo com meus testes, o valor padrão (
auto) é 10%. Esta propriedade pode ser agrupada emtext-decoration. - text-decoration-skip-ink
- Skip ink significa, literalmente, pular tinta. O valor padrão é
auto, mas se você escolhernone, note que a linha vai seguir direta, sem pular o traço da fonte. Esta propriedade não pode ser agrupada emtext-decoration.
Juntando tudo, pode ficar assim:
text-decoration-skip-ink:none;}
O código acima tem um resultado como este numa fonte cursiva:
Voltando text-decoration-skip-ink para auto, o resultado muda nas letras que passam da "linha" inferior:
Para a maioria das fontes, eu prefiro none. Mas se for uma fonte mais artística, pode ser melhor o traço não ficar sobre o texto, como no exemplo acima.
Outro valor aceito para text-decoration-skip-ink é all, cuja aplicação só pode ser percebida em alguns alfabetos asiáticos.
E se eu usar text-decoration: underline overline rgba(200, 200, 255, 0.5) wavy 100%?
Coloquei 50% de transparência na cor (0.5) porque o traço de cima fica SOBRE o texto do parágrafo anterior. Já o traço inferior fica SOB o parágrafo seguinte.
Como estou falando de text-decoration, preciso falar também sobre text-underline-offset e text-underline-position, duas propriedades que mudam o lugar do sublinhado.
text-underline-offset serve para definir uma distância entre o sublinhado e o texto, como no exemplo abaixo:
text-underline-offset: -2px.text-underline-position também muda a distância entre o sublinhado e o texto, mas de outra forma. A posição padrão é auto, mas mudando para under, o traço aparecerá depois do texto, sem cortar curvas de letras, como nos exemplos acima.
Para o caso de texto vertical, também é possível usar left e right, sendo possível escolher dois valores, como nos exemplos abaixo:
text-underline-position: right under;
Você encontra mais informações sobre text-decoration e text-underline nos sites MDN e W3Schools.
Confira também o texto sobre text-emphasis.
Até mais!


Nenhum comentário:
Postar um comentário
Todos os comentários são moderados pela autora do blog.