ToolDeck

HTML Biçimlendirici

HTML'yi doğru girinti ile biçimlendir ve güzelleştir

Örnek dene

HTML Girdi

Biçimlendirilmiş HTML

Yerel olarak çalışır · Gizli bilgi yapıştırmak güvenlidir
Biçimlendirilmiş HTML burada görünecek…

HTML Biçimlendirme Nedir?

HTML biçimlendirici, HTML biçimlendirmesi (güzelleştirme veya pretty-print olarak da bilinir) gerçekleştiren bir araçtır: HTML işaretlemesine tutarlı girinti, satır sonları ve boşluklar ekleyerek iç içe geçme yapısını görünür hale getirir. Tarayıcılar, HTML oluştururken boşlukları yok sayar; bu nedenle tek satırda yazılmış bir belge ile özenle girintilenmiş bir belge aynı çıktıyı üretir. Fark tamamen insanlar içindir: biçimlendirilmiş HTML daha kolay okunur, hata ayıklanır ve bakımı yapılır.

HTML belirtimi (WHATWG tarafından HTML Living Standard olarak yönetilen) 110'dan fazla öğe tanımlar; her birinin kendine özgü bir içerik modeli vardır. <div>, <section> ve <article> gibi blok düzeyinde öğeler genellikle yeni bir satırda başlar ve alt öğelerini girintiler. <br>, <img> ve <input> gibi void öğelerin kapanış etiketi ve girintilenecek alt öğesi yoktur. İyi bir biçimlendirici bu ayrımları kavrar ve her etiketin ardına körce boşluk eklemek yerine girinti kurallarını buna göre uygular.

Biçimlendirme en çok geliştirme sürecinde önem taşır. Küçültülmüş veya makine tarafından üretilmiş HTML, CMS platformlarından gelen çıktı ve tarayıcı DevTools'undan kopyalanan işaretleme çoğunlukla tek yoğun bir satır halinde gelir. Düzgün girinti olmadan, eksik bir kapanış etiketini bulmak veya derin iç içe geçmiş bir yapıyı izlemek önemli ölçüde zaman alır. HTML biçimlendirici, bu metin yığınını tek adımda düzgün girintili, okunabilir bir ağaç yapısına dönüştürür.

Bu HTML Biçimlendiriciyi Neden Kullanmalısınız?

Herhangi bir HTML'yi yapıştırın ve anında düzgün girintili çıktı alın. Yüklenecek eklenti yok, yazılacak yapılandırma dosyası yok, oluşturulacak hesap yok.

Anında Biçimlendirme
Çıktı siz yazarken güncellenir. Herhangi bir kaynaktan küçültülmüş HTML yapıştırın ve bir derleme adımı ya da CLI komutu beklemeden girintili sonucu görün.
🔒
Gizlilik Öncelikli İşleme
Tüm biçimlendirme JavaScript kullanılarak tarayıcınızda çalışır. HTML'niz hiçbir zaman cihazınızı terk etmez; bu nedenle API anahtarları, tokenlar veya dahili URL'ler içeren işaretlemeyi güvenle yapıştırabilirsiniz.
🎯
Yapılandırılabilir Girinti
Tek tıklamayla 2 boşluk ve 4 boşluk girinti arasında geçiş yapın. Biçimlendirici seçiminizi her iç içe geçme düzeyine tutarlı biçimde uygular.
📋
Tek Tıkla Kopyala
Biçimlendirilmiş çıktıyı tek bir düğmeyle panonuza kopyalayın. Doğrudan editörünüze, PR incelemenize veya belgelerinize yapıştırın.

HTML Biçimlendirici Kullanım Senaryoları

Frontend Geliştirme
HTML şablonlarını sürüm kontrolüne göndermeden önce biçimlendirin. Tutarlı girinti, pull request'lerdeki fark gürültüsünü azaltır ve kod incelemesini hızlandırır.
Backend Şablon Hata Ayıklama
Django, Rails veya PHP gibi çerçevelerden gelen sunucu taraflı HTML çoğunlukla girintisiz işaretleme üretir. İç içe geçmeyi doğrulamak ve kapatılmamış etiketleri tespit etmek için oluşturulan çıktıyı buraya yapıştırın.
DevOps ve CI İşlem Hatları
Derleme araçlarının iyi yapılandırılmış HTML ürettiğini doğrulayın. Görsel incelemeden önce statik site oluşturucularının veya HTML e-posta derleyicilerinin çıktısını biçimlendirin.
QA ve Test
Test çalıştırmaları arasında HTML çıktısının biçimlendirilmiş anlık görüntülerini karşılaştırın. Düzgün girinti, bir sayfanın iki versiyonunu karşılaştırırken yapısal farklılıkları açıkça ortaya koyar.
Veri Mühendisliği
Web kazıma işlem hatları inceleme gerektiren ham HTML üretir. Çıkarma seçicileri yazmadan önce DOM yapısını anlamak için kazınan sayfaları biçimlendirin.
HTML Öğrenmek
Öğrenciler herhangi bir web sitesinin kaynak kodunu yapıştırarak öğelerin birbirinin içine nasıl yerleştiğini görebilir. Biçimlendirilmiş ağaç görünümü, etiketler arasındaki üst-alt ilişkilerini açıkça ortaya koyar.

HTML Girinti Kuralları

Bir HTML biçimlendirici her öğe türünü içerik modeline göre ele alır. Aşağıdaki tablo, yaygın öğelerin 2 boşluk ve 4 boşluk ayarlarıyla nasıl girintilendiğini göstermektedir. Her ikisi de tarayıcıda özdeş oluşturma üretir; fark yalnızca okunabilirliktedir.

EtiketÖğe Türü2 Boşluk Girinti4 Boşluk Girinti
<div>Block elementNew line, indent childrenNew line, indent children
<span>Inline elementNew line, indent childrenInline with parent text
<br>Void elementNew line, same levelNew line, same level
<img>Void elementNew line, same levelNew line, same level
<!-- -->CommentNew line, same levelNew line, same level
<!DOCTYPE>Document typeFirst line, no indentFirst line, no indent
<script>Script blockNew line, preserve innerNew line, preserve inner
<pre>PreformattedNew line, preserve innerNew line, preserve inner

Biçimlendirici - Küçültücü - Linter Karşılaştırması

Bu üç araç HTML üzerinde çalışır ancak farklı amaçlara hizmet eder. Biçimlendirme ve küçültme birbirinin zıttı dönüşümlerdir; linting boşlukları değiştirmeden hataları kontrol eder.

Biçimlendirici (Bu Araç)
HTML'yi okunabilir kılmak için girinti ve satır sonları ekler. DOM yapısını değiştirmez veya içerik kaldırmaz. Çıktı tarayıcıda giridle özdeş biçimde oluşturulur.
Küçültücü
Dosya boyutunu azaltmak için boşlukları, yorumları ve isteğe bağlı kapanış etiketlerini kaldırır. Biçimlendirmenin tam tersidir. Okuma veya düzenleme için değil, üretim derlemeleri için kullanın.
Linter (HTMLHint / W3C)
Eksik alt öznitelikleri, yinelenen kimlikler veya kullanımdan kaldırılmış etiketler gibi hataları kontrol eder. Sorunları raporlar ancak girinti veya biçimlendirmeyi değiştirmez.

Kod Örnekleri

Popüler dil ve araçlarda HTML'yi programatik olarak nasıl biçimlendireceğiniz:

JavaScript (js-beautify)
import { html as beautify } from 'js-beautify'

const ugly = '<div><p>Hello</p><ul><li>One</li><li>Two</li></ul></div>'

const formatted = beautify(ugly, {
  indent_size: 2,
  indent_char: ' ',
  wrap_line_length: 80,
  preserve_newlines: false,
})
// → <div>
// →   <p>Hello</p>
// →   <ul>
// →     <li>One</li>
// →     <li>Two</li>
// →   </ul>
// → </div>
Python (BeautifulSoup)
from bs4 import BeautifulSoup

ugly = '<div><p>Hello</p><ul><li>One</li><li>Two</li></ul></div>'

soup = BeautifulSoup(ugly, 'html.parser')
print(soup.prettify(formatter='minimal'))
# → <div>
# →  <p>
# →   Hello
# →  </p>
# →  <ul>
# →   <li>One</li>
# →   <li>Two</li>
# →  </ul>
# → </div>
Go (goquery + x/net/html)
package main

import (
    "bytes"
    "fmt"
    "golang.org/x/net/html"
    "strings"
)

func main() {
    ugly := "<div><p>Hello</p></div>"
    doc, _ := html.Parse(strings.NewReader(ugly))

    var buf bytes.Buffer
    html.Render(&buf, doc)
    fmt.Println(buf.String())
    // renders normalized HTML — pair with indent logic for pretty output
}
CLI (Prettier)
# Format a single file in place
npx prettier --write index.html

# Format and print to stdout (pipe-friendly)
npx prettier --parser html index.html

# Format with 4-space indentation
npx prettier --tab-width 4 --parser html index.html

# Format HTML from stdin
echo '<div><p>Hello</p></div>' | npx prettier --parser html

Sıkça Sorulan Sorular

HTML biçimlendirme ile HTML doğrulama arasındaki fark nedir?
Biçimlendirme, işaretlemenin okunabilir olması için girinti ve satır sonları ekler. Doğrulama ise işaretlemenin HTML belirtimine uygun olup olmadığını denetler; eksik zorunlu öznitelikler veya yanlış iç içe geçmiş öğeler gibi hataları raporlar. Biçimlendirici hataları düzeltmez; doğrulayıcı boşlukları değiştirmez.
HTML biçimlendirme sayfanın oluşturulma biçimini değiştirir mi?
Çoğu durumda hayır. Tarayıcılar oluştururken ardışık boşlukları tek bir boşluğa indirger. İstisnalar: white-space: pre veya benzer CSS kurallarına sahip öğeler ile boşluğun anlamlı olduğu <pre> ve <textarea> öğeleridir. İyi yapılmış bir biçimlendirici bu öğelerin içeriğini olduğu gibi korur.
HTML girintisi için kaç boşluk kullanmalıyım?
İki boşluk ve dört boşluk her ikisi de yaygındır. Google'ın HTML/CSS Stil Kılavuzu 2 boşluk önermektedir. Prettier biçimlendirici de varsayılan olarak 2 boşluk kullanır. Dört boşluk, Python'un PEP 8 kuralıyla örtüşür ve bazı ekipler tarafından diller arası tutarlılık için tercih edilir. Birini seçin ve biçimlendirici veya editör yapılandırmasıyla uygulayın.
Gömülü JavaScript veya CSS içeren HTML'yi biçimlendirebilir miyim?
Bu araç HTML yapısını (etiketler ve öznitelikler) biçimlendirir. Satır içi <script> ve <style> blokları olduğu gibi korunur. Gömülü JavaScript ve CSS biçimlendirmesi için tek bir geçişte üç dili de ayrıştırıp biçimlendirebilen Prettier gibi özel bir biçimlendirici kullanın.
HTML'de tab mı boşluk mu tartışması hâlâ devam ediyor mu?
Çoğu HTML stil kılavuzu ve biçimlendirici varsayılan olarak boşlukları tercih eder. 2023 Stack Overflow Geliştirici Anketi, web geliştirmede katılımcıların yaklaşık %55'inin boşluk kullandığını göstermektedir. Tab'ların her geliştiricinin tercih ettiği görsel genişliği ayarlamasına olanak tanıyan erişilebilirlik avantajı vardır. Her ikisi de işe yarar; bir proje içinde tutarlılık tercihten daha önemlidir.
HTML'im biçimlendirmeden sonra neden farklı görünüyor?
Biçimlendirici, orijinal işaretlemede bulunmayan boşluk karakterleri (boşluklar ve satır sonları) ekler. Bu, kaynak kodun görünümünü değiştirir ancak oluşturulan çıktıyı değiştirmez. Tarayıcıda görsel bir fark görüyorsanız, muhtemelen eklenen boşluğun etiketler arasında fazladan bir boşluk karakteri oluşturduğu satır içi öğelerden kaynaklanmaktadır; bu, CSS ile çözülebilir (üst öğede font-size: 0 veya flexbox düzeni).
Bir ekip genelinde tutarlı HTML biçimlendirmesini nasıl uygularım?
CI işlem hattınızda otomatik bir biçimlendirici kullanın. Prettier, HTML'yi destekler ve Husky veya lint-staged aracılığıyla pre-commit kancası olarak çalıştırılabilir. Her commit'in her geliştiricinin editör ayarlarından bağımsız olarak aynı biçimlendirme kurallarını izlemesi için tabWidth, printWidth ve htmlWhitespaceSensitivity belirten bir .prettierrc yapılandırma dosyasını deponuza ekleyin.
HTML biçimlendirici ile HTML güzelleştirici arasındaki fark nedir?
Bunlar aynı işlemdir. 'Biçimlendirici' ve 'güzelleştirici' her ikisi de HTML işaretlemesine girinti ve satır sonları eklemeyi ifade eder. Bazı araçlar 'beautify' (js-beautify), diğerleri 'format' (Prettier) ifadesini kullanır. Çıktı özdeştir: düzgün girintili, insan tarafından okunabilir HTML. 'Pretty-print', belgelerde ve arama sorgularında yaygın olarak kullanılan başka bir eş anlamlıdır.