HTML Çöp Temizleyici: Microsoft Word ve Modern Framework'ler Neden Kodunuza İmparatorluklar Doldurur?
HTML Çöp Temizleyici, o kadar yaygın bir sorun için tasarlanmıştır ki neredeyse dijital bir geçiş töreni haline gelmiştir: Birisi Microsoft Word'den, haber portallarından (Delfi, BBC, Yahoo) veya web uygulamalarından içerik kopyalar, bunu bir web sitesine yapıştırır ve ortaya çıkan HTML, seyahat eden bir bakanlık sayılabilecek kadar törensel bagajla birlikte gelir.
Temiz bir paragraf, bir başlık ve belki bir tablo yerine; ad alanları, Office XML adacıkları, koşullu yorumlar, mso-* stil kalıntıları, hayalet span'lar, antika uyumluluk bayrakları ve basit metninizi 50 KB'lık bir varlık kabusuna dönüştüren framework hidrasyon etiketleri (data-n-head, data-hid, data-v-*) elde edersiniz.
Word'ün Ötesinde: Modern Framework'ler ve Portallar Kodunuzu Nasıl Kirletir?
Modern web geliştirme yepyeni bir işaretleme kirliliği nesli doğurdu. Modern portallardan veya JS framework'lerinden (Next.js, Nuxt.js, React, Vue, Svelte) içerik kopyaladığınızda farkında olmadan dijital atıkları da beraberinizde taşırsınız:
- SSR Hidrasyon Üstverisi: Yalnızca framework durumunu yeniden sulandırmak (rehydration) için tasarlanmış
data-n-head,data-hid,data-v-*,data-hydratedvedata-testidgibi öznitelikler. - Analitik ve İzleme Etiketleri: Kullanıcı davranışını izlemek için eklenen gizli meta öğeleri (
og-profile-acct,cXenseParse,oath:guce,gemius,dimatter) ve izleme pikseli kancaları. - Kaynak Önceden Getirme ve Ön Yükleme Zincirleri: Üçüncü taraf reklam ağlarına (Taboola, DoubleClick, Ozone vb.) bağlanmaya çalışan
<link rel="preload">vedns-prefetchetiketleri. - FontAwesome ve CSS Değişkeni Şişkinliği: Yüzlerce değişken (
--fa-font-*),@keyframesanimasyonları ve dosya boyutunu şişirip site stillerinizi bozan gizlenmiş sınıf kuralları (örn..gb_*,.uds-color-mode-*) içeren canavarca stil blokları.
HTML Çöp Temizleyicimiz akıllı bir çok geçişli filtreleme motorundan yararlanır. Yalnızca klasik Office mso-* şişkinliğini tanımlamakla kalmaz, aynı zamanda framework yeniden hidrasyon kalıntılarını, gizlenmiş sınıfları temizler, eski etiketleri modernize eder (<b> ➔ <strong>, <i> ➔ <em>, <strike> ➔ <del> dönüştürür) ve yalnızca gerçekten ihtiyacınız olan gerçek anlamsal HTML'i korur.
Bu Office Ad Alanı Satırları Gerçekte Ne Anlama Geliyor?
<html xmlns:v="urn:schemas-microsoft-com:vml"
xmlns:o="urn:schemas-microsoft-com:office:office"
xmlns:w="urn:schemas-microsoft-com:office:word"
xmlns:m="http://schemas.microsoft.com/office/2004/12/omml">
xmlns:v, bir zamanlar şekiller için kullanılan eski bir Microsoft vektör formatı olan VML'yi (Vektör İşaretleme Dili) bildirir. xmlns:o meta veriler için Office ad alanıdır, xmlns:w Word belgesi dahili bileşenleri içindir ve xmlns:m Matematik İşaretleme Dili içindir. Word sizi dosyanın sıradan bir HTML olmadığı —Office dış iskeleti giymiş HTML olduğu— konusunda uyarmaktadır.
Stil Blokları: CSS'in Ölmeye Gittiği Yer
<style>
@font-face { font-family:"Cambria Math"; ... }
p.MsoNormal, li.MsoNormal { mso-style-qformat:yes; ... }
h1 { mso-outline-level:1; ... }
</style>
Bu stil bloğu yazı tipi bildirimleri, Word sınıf kuralları, başlık geçersiz kılmaları ve özel mso-* özellikleri içeren klasik bir Office suçudur. Standart tarayıcılar çoğunu görmezden gelir, ancak dosyalarınızı şişirir ve CMS düzenleyicilerinin kafasını karıştırır.
Düzgün Bir Temizleyici Neleri Kaldırmalı vs. Nelere Saygı Duymalıdır?
Yetkin bir temizleyici Microsoft ad alanlarını, Office XML bloklarını, koşullu yorumları, VML yankılarını, sepet dosya bağlantılarını, mso-* CSS'ini, Word sınıflarını (MsoNormal gibi), SSR hidrasyon özniteliklerini, izleme etiketlerini ve gereksiyiz satır içi biçimlendirmeyi kaldırmalıdır.
Aynı zamanda gerçek içeriğe saygı duymalıdır: Paragraflar, başlıklar, listeler, tablolar, bağlantılar, vurgular ve anlamlı dil ayrımları. Amaç steril bir yıkım değil, disiplinli bir kurtarmadır: Daha az framework ayini, daha fazla web netliği.