- Başlıca tarayıcılar, `` etiketinin varsayılan stilini (UA stili) değiştiren bir güncellemeyi uygulamaya alıyor
- Özellikle iç içe geçmiş
section, article, nav, aside gibi yapıların içinde kullanılan `` etiketlerini etkiliyor
- Geliştiricilerin, bu değişiklik nedeniyle sitelerinde beklenmedik stil değişiklikleri veya Lighthouse uyarıları oluşabileceği için dikkatli olması gerekiyor
Neler değişiyor
- HTML spesifikasyonunda bir dönem "outline algorithm" adlı bir kural vardı; buna göre
, iç içe geçmiş sectioning öğelerinin sayısına bağlı olarak görsel olarak , `` gibi gösteriliyordu
- Örneğin
section > h1, gibi; `section > section > h1` ise gibi render ediliyordu
- Bu durum gerçek erişilebilirlik ağacına yansımıyor, araçlar tarafından da farklı biçimlerde yorumlanarak kafa karışıklığı yaratıyordu
- Sonunda bu algoritma 2022'de HTML spesifikasyonundan kaldırıldı ve şimdi tarayıcılar da buna bağlı UA stillerini kaldırıyor
Eski tarayıcı UA stili örneği
- x h1 { font-size: 1.50em }
- x x h1 { font-size: 1.17em }
- x x x h1 { font-size: 1.00em }
- x x x x h1 { font-size: 0.83em }
- x x x x x h1 { font-size: 0.67em }
HTML yapı örneği
Level 1
Level 2
Level 3
Level 4
Beklenebilecek değişiklikler ve zamanlama
- ``, artık iç içe geçmiş section öğelerinin içinde diye otomatik olarak farklı stillenmeyecek
- UA stili, tüm `` etiketlerine aynı stili uygulayacak
- Lighthouse, `` için
font-size tanımlanmadığında uyarı gösterecek
- Gösterilen uyarı:
H1UserAgentFontSizeInSection
Firefox
- 31 Mart 2025'ten itibaren Firefox Beta 138'de masaüstü kullanıcılarının %50'sine stil değişikliği dağıtılmaya başlandı
- Firefox Stable 138'de önce %5'e dağıtım yapılıp ardından 140 sürümüne kadar tam yaygınlaştırma planlanıyor
- Firefox 136 ve sonrasında,
font-size veya margin tanımlı değilse konsolda uyarı gösteriliyor
- Ayarı değiştirme yöntemi:
about:config içinde layout.css.h1-in-section-ua-styles.enabled değerini false olarak ayarlayın
Chrome
- Chrome 136'dan itibaren, `` varsayılan küçük stile dayanıyorsa uyarı veriliyor
- Bu durum Lighthouse'un "Best Practices" puanını etkileyebilir
Safari
- Henüz somut bir güncelleme ya da bug takibi yok, ancak WebKit tarafında da benzer bir güncelleme bekleniyor
Lighthouse uyarısı nasıl düzeltilir
- Lighthouse, Chromium DevTools uyarılarını temel alarak `` için
font-size yoksa uyarı gösteriyor
- Bunu önlemek için `` etiketine açıkça stil vermek gerekiyor
Örnek stil
h1 {
margin-block: 0.67em;
font-size: 2em;
}
- specificity'yi (öncelik) önlemek için
:where() kullanın
:where(h1) {
margin-block: 0.67em;
font-size: 2em;
}
Özet kontrol listesi
- Tarayıcı varsayılan stillerine güvenmeyin
- Hiyerarşiyi açıkça göstermek için
, gibi etiketleri uygun şekilde kullanın
- Tüm `` etiketleri için
font-size ve margin değerlerini açıkça tanımlayın
- Bu değişikliği yansıtacak şekilde CSS reset'inizi güncelleyin
- Uyarıları Lighthouse ve DevTools üzerinden kontrol edin
- En güncel içerik için MDN'nin ilgili dokümantasyonuna başvurun
İlgili kaynaklar
1 yorum
Hacker News görüşleri
Firefox 138’in kararlı sürümünde kullanıcıların %5’ine dağıtılacak ve ardından %50’ye çıkarılması planlanıyor
W3C’nin benimsediği outline algoritmasının tarihsel arka planı ilgi çekici bulunuyor
H1 davranışının spesifikasyona ne zamandan beri dahil olduğunu merak eden görüşler var
Bölüm öğeleri (
,,,) ile `` etiketinin davranışı üzerine hiç derinlemesine düşünmediğini söyleyen görüşler varOutline algoritmasının başarılı olamaması üzücü bulunuyor
etiketi, bulunduğu yere bakılmaksızınolarak kalmalı görüşü varBu karmaşıklık yüzünden birçok tasarımcının her şey için `` kullandığı söyleniyor
roleözniteliği kullanılırsa erişilebilirliğin de sağlanabileceği belirtiliyorHTML başlık yapısını biraz saçma bulan görüşler var
h1veh2nin, HTML’nin diğer biçimlerinden farklı olarak açık etiketler ve bir hiyerarşi oluşturduğu belirtiliyor