CSS'te metnin altı nasıl çizilir
text-decoration: underline metnin altına bir çizgi çizer. Ona bir renk vermedikçe çizgi metin rengini alır.
İkinci satır çizgi türü, stili ve rengi için text-decoration kısa yazımını kullanıyor, sonra kalınlığı ve uzaklığı kendi özellikleriyle ayarlıyor. Belirtim kalınlığın kısa yazımın içinde olmasına da izin verir, ama onu eklediğinde Safari bildirimin tamamını atar, bu yüzden text-decoration-thickness'ı ayrı yaz.
text-decoration özellikleri
| Özellik | Değerler | Varsayılan |
|---|---|---|
text-decoration-line | underline, overline, line-through, none (birleştirilebilir) | none |
text-decoration-style | solid, double, dotted, dashed, wavy | solid |
text-decoration-color | Herhangi bir renk | currentColor (metin rengi) |
text-decoration-thickness | Bir uzunluk, bir yüzde, auto, from-font | auto |
text-underline-offset | Bir uzunluk, bir yüzde, auto | auto |
text-decoration ilk dördünün kısa yazımıdır, ama kalınlığı onun dışında tut: Safari, kalınlık içeren bir text-decoration bildirimini yok sayar. text-underline-offset ayrıdır ve tek başına yazılmalıdır.
Stiller, renkler ve kalınlık
Alt çizgiyi taşımak: text-underline-offset
Varsayılan olarak çizgi harflere yakın durur ve g, p ve y gibi aşağı sarkan harflerin çevresinden atlar. text-underline-offset onu daha aşağı iter; bu çoğu zaman başlıklarda ve linklerde daha temiz okunur:
Aşağı sarkan harflerin çevresindeki boşluklar, varsayılan olarak açık olan text-decoration-skip-ink: auto'dan gelir. Kesintisiz bir çizgi için onu none yap.
Linklerden alt çizgiyi kaldırmak
Linklerin altı tarayıcının stil dosyası tarafından çizilir. text-decoration: none onu kaldırır. Birçok okuyucu linkleri alt çizgiden bulduğu için onu hover'da ve klavye odağında geri getir ve linke metinden farklı bir renk ver:
Gezinme çubukları ve butonlar alt çizgiyi kaldırmak için makul yerlerdir, çünkü konumları zaten "link" der. Bir metin paragrafının içinde onu koru. Link durumlarıyla ilgili daha fazlası hover sayfasında.
Üst çizgi ve üstü çizili yazı
text-decoration-line metnin üstüne ya da ortasından da bir çizgi çizer ve birden fazla değer kabul eder:
.old-price { text-decoration: line-through; }
.both { text-decoration-line: underline overline; }
CSS ile üstü çizili yazı yalnızca görseldir. Metin silinmiş içerikse (değişen bir fiyat, kaldırılan bir öğe), HTML altı çizili yazı sayfasının gösterdiği gibi onu <s> ya da <del> ile işaretle; böylece anlam yalnızca stilde değil işaretlemede de olur.
Sık yapılan hatalar
- Stil için
<u>ile alt çizmek.<u>, yazım hataları gibi farklı olarak işaretlenen metin içindir. Stilli bir alt çizgi için CSS kullan. - Link olmayan metnin altını çizmek. Okuyucular ona tıklamaya çalışır. Vurgu için bunun yerine kalın yazı, renk ya da arka plan kullan.
- Gövde metnindeki link alt çizgilerini başka bir ipucu olmadan kaldırmak. Farkı göremeyen okuyucular için yalnızca renk yeterli değildir.
- Bir ebeveynin alt çizgisini çocuktan kaldırmaya çalışmak. İçeriden geri alınamaz; ebeveyni değiştir ya da çocuğu
inline-blockyap. text-underline-offset'in kısa yazımda olmasını beklemek. Kendi başına bir özelliktir.- Kalınlığı kısa yazıma koymak.
text-decoration: underline 2pxChrome ve Firefox'ta çalışır, ama Safari bildirimin tamamını atar.text-decoration-thicknesskullan.
Sıkça Sorulan Sorular
CSS'te metnin altı nasıl çizilir?
Elemente text-decoration: underline; ver. Çizginin görünümü için text-decoration-color, text-decoration-style, text-decoration-thickness ve text-underline-offset ekle.
Bir linkten alt çizgi nasıl kaldırılır?
a elementine text-decoration: none; ver. Linklerin başka bir yolla hâlâ öne çıktığından emin ol (renk artı hover ya da odakta alt çizgi), çünkü birçok okuyucu linkleri alt çizgiden tanır.
Alt çizgi rengi nasıl değiştirilir?
text-decoration-color ya da kısa yazımı kullan: text-decoration: underline #f59e0b;. O olmadan çizgi metin rengini kullanır.
Metin ile alt çizgi arasına nasıl boşluk eklenir?
text-underline-offset kullan, örneğin text-underline-offset: 4px;. Daha büyük değerler çizgiyi metnin daha altına taşır.
Bir çocuk elementten alt çizgiyi neden kaldıramıyorum?
Bir ebeveynin çizdiği alt çizgi çocuklarının üzerine boyanır ve onların içinden kaldırılamaz. Onu ayarlayan elementte kaldır ya da çocuğu display: inline-block yap; ebeveynin süslemesi ona ulaşmaz.