ToolDeck

CSS Biçimlendirici

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

Örnek dene

CSS Girdi

Biçimlendirilmiş CSS

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

CSS Biçimlendirme Nedir?

CSS biçimlendirme, kodun insanlar tarafından okunabilir olması için Cascading Style Sheets dosyalarına tutarlı girinti, satır sonları ve boşluklar ekleme sürecidir. Tarayıcılar CSS'deki boşlukları tamamen görmezden gelir. Tek satırlık küçültülmüş bir dosya ile düzgünce girintili bir stil sayfası aynı görünümü üretir. Fark okunabilirlikte yatar: biçimlendirilmiş CSS, seçicileri taramanıza, eksik noktalı virgülleri fark etmenize ve cascade yapısını bir bakışta anlamanıza olanak tanır.

CSS biçimlendirici (bazen CSS güzelleştirici veya pretty-printer olarak da adlandırılır), sıkıştırılmış ya da tutarsız biçimlendirilmiş CSS'yi alarak düzgün girinti, satır başına tek bildirim ve tutarlı parantez yerleşimiyle yeniden yazar. Bu işlem, küçültmenin tersine beautification veya pretty-printing olarak da adlandırılır. Küçültme üretim için dosya boyutunu azaltmak amacıyla boşlukları kaldırırken biçimlendirme, geliştirme, kod incelemesi ve kod tabanı bakımı için yapıyı yeniden oluşturur.

CSS spesifikasyonu (W3C CSS Syntax Module Level 3) stil sayfalarının dilbilgisini tanımlar ancak boşluk kuralları hakkında hiçbir şey söylemez. Biçimlendirme kuralları ekip kararıdır: sekme mi boşluk mu, 2 boşluk mu 4 boşluk mu, parantez stili, kural kümeleri arasında boş satır. Biçimlendirici seçtiğiniz kuralı her dosyada tutarlı biçimde uygular. Çoğu ekip tercihini .prettierrc veya .editorconfig dosyasında belgeler.

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

Herhangi bir CSS yapıştırın ve milisaniyeler içinde düzgünce girintili çıktı alın. Kurulacak editör eklentisi yok, yazılacak yapılandırma dosyası yok, oluşturulacak hesap yok.

Anında Biçimlendirme
Siz yazarken veya yapıştırırken çıktı güncellenir. Bir derleme adımını beklemenize ya da CLI komutu çalıştırmanıza gerek kalmadan biçimlendirilmiş CSS'yi hemen alırsınız.
🔒
Gizlilik Öncelikli İşleme
Tüm biçimlendirme JavaScript kullanılarak tarayıcınızda yerel olarak çalışır. CSS'niz cihazınızdan hiç çıkmaz ve hiçbir sunucuya gönderilmez.
🎨
Yapılandırılabilir Girinti
Projenizin kod stiline uyması için 2 boşluk, 4 boşluk veya sekme girintisi arasından seçim yapın. Çıktı, doğrudan kod tabanınıza yapıştırmaya hazırdır.
📋
Giriş Gerektirmez
Sayfayı açın, CSS'nizi yapıştırın, sonucu kopyalayın. Kayıt yok, hız sınırı yok, özellik kısıtlaması yok. Araç her ziyarette tam kapasiteyle kullanılabilir.

CSS Biçimlendirici Kullanım Senaryoları

Frontend Geliştirme
Bir satıcı kütüphanesinden veya CDN'den küçültülmüş CSS aldığınızda, seçicileri okumak ve kendi stil sayfalarınızda neleri geçersiz kıldığını anlamak için biçimlendirin.
Backend Mühendisliği
Sunucu tarafında işlenen sayfalar kritik CSS'yi genellikle tek satır olarak satır içine ekler. Bu CSS'yi biçimlendirmek, ilk HTML yüküne hangi stillerin dahil edildiğini denetlemeyi kolaylaştırır.
DevOps ve CI Pipeline'ları
Biçimlendirici çıktısını işlenen dosyalarla karşılaştırarak pull request'lerde tutarlı CSS biçimlendirmesini zorunlu kılın. Tutarsız boşluklar, gerçek değişiklikleri gizleyen gereksiz diff'ler oluşturur.
QA ve Hata Araştırması
Görsel bir hatayı ayıklarken, hangi özelliklerin uygulandığını ve öncelik sırasını hızlıca tespit etmek için DevTools'tan alınan hesaplanmış CSS'yi biçimlendirin.
Veri Göçü
İçerik yönetim sistemleri ve e-posta oluşturucular CSS'yi genellikle boşlukları kaldırılmış şekilde veritabanı alanlarında saklar. Çıkarılan CSS'yi biçimlendirmek, yeniden içe aktarmadan önce doğrulamayı kolaylaştırır.
CSS Öğrenmek
CSS öğrenen öğrenciler, eğitimlerden veya Stack Overflow yanıtlarından örnekleri yapıştırıp tutarlı biçimde biçimlendirilmiş halini görebilir; bu sayede iç içe geçme ve cascade yapısını takip etmek kolaylaşır.

CSS Özellik Sıralama Referansı

Çoğu CSS biçimlendirici özellikleri yeniden sıralamaz. Ancak pek çok stil kılavuzu ilgili özelliklerin bir arada gruplanmasını önerir. Aşağıdaki tablo, Stylelint'in order eklentisi ve CSScomb gibi araçlar tarafından kullanılan yaygın bir gruplama kuralını gösterir:

GrupÖrnek ÖzelliklerAmaç
Position & Layoutposition, display, float, clearDefines the element's rendering mode
Box Modelwidth, height, margin, paddingControls dimensions and spacing
Typographyfont-size, line-height, colorText styling properties
Visualbackground, border, box-shadowDecorative properties
Animationtransition, animation, transformMotion and transform effects
Misccursor, overflow, z-indexBehavioral and stacking properties

Bu gruplama bir kural değil, bir kuraldır. Tarayıcılar bildirimleri, kural bloğu içindeki özellik konumuna bakılmaksızın özgüllük ve kaynak sırasına göre uygular. Biçimlendirici boşluk ve girintiye odaklanır; özellik yeniden sıralama, Stylelint gibi araçların ele aldığı ayrı bir linting konusudur.

CSS Biçimlendirme ve CSS Küçültme Karşılaştırması

Biçimlendirme ve küçültme, geliştirmenin farklı aşamalarında uygulanan ters işlemlerdir:

CSS Biçimlendirici (bu araç)
CSS'yi okunabilir kılmak için girinti, satır sonları ve boşluklar ekler. Geliştirme ve kod incelemesi sırasında kullanılır. Dosya boyutunu artırır ancak tarayıcı oluşturması üzerinde hiçbir etkisi yoktur. Çıktı insanlar içindir.
CSS Küçültücü
Dosya boyutunu küçültmek için gereksiz tüm boşlukları, yorumları ve fazlalık sözdizimini kaldırır. Üretim derlemeleri için kullanılır. Çıktı, okumak için değil, tarayıcılar ve CDN'ler içindir.

Kod Örnekleri

Farklı dil ve ortamlarda CSS'yi programatik olarak nasıl biçimlendireceğiniz:

JavaScript (Prettier API)
import * as prettier from 'prettier'

const ugly = 'body{margin:0;padding:0}h1{font-size:2rem;color:#333}'

const formatted = await prettier.format(ugly, {
  parser: 'css',
  tabWidth: 2,
  singleQuote: true,
})
// → "body {\n  margin: 0;\n  padding: 0;\n}\n\nh1 {\n  font-size: 2rem;\n  color: #333;\n}\n"
Python (cssbeautifier)
import cssbeautifier

ugly = 'body{margin:0;padding:0}h1{font-size:2rem;color:#333}'

opts = cssbeautifier.default_options()
opts.indent_size = 2

formatted = cssbeautifier.beautify(ugly, opts)
# → "body {\n  margin: 0;\n  padding: 0;\n}\n\nh1 {\n  font-size: 2rem;\n  color: #333;\n}"
CLI (Prettier)
# Format a single file in place
npx prettier --write styles.css

# Format all CSS files in a directory
npx prettier --write "src/**/*.css"

# Check formatting without modifying files
npx prettier --check "src/**/*.css"

# Pipe minified CSS through stdin
echo "body{margin:0;padding:0}" | npx prettier --parser css
PHP (sabberworm/php-css-parser)
<?php
// composer require sabberworm/php-css-parser
require 'vendor/autoload.php';

use Sabberworm\CSS\Parser;
use Sabberworm\CSS\OutputFormat;

$input = 'body{margin:0;padding:0}h1{font-size:2rem;color:#333}';

$document = (new Parser($input))->parse();
echo $document->render(OutputFormat::createPretty());
// → body {
//     margin: 0;
//     padding: 0;
//   }
//   h1 {
//     font-size: 2rem;
//     color: #333;
//   }

Sıkça Sorulan Sorular

CSS biçimlendirici ve CSS linter arasındaki fark nedir?
Bir CSS biçimlendirici yalnızca boşlukları değiştirir: girinti, satır sonları, iki nokta ve parantez etrafındaki boşluklar. Gerçek CSS bildirimlerinizi değiştirmez. Bir CSS linter (Stylelint gibi) kodunuzu hatalar, kötü uygulamalar ve stil ihlalleri açısından analiz eder; boşlukların ötesinde sorunları önerebilir veya otomatik olarak düzeltebilir. Ekipler genellikle ikisini birlikte kullanır: biçimlendirici tutarlı boşluk için, linter hataları yakalamak için.
CSS biçimlendirme, tarayıcıda görünümü etkiler mi?
Hayır. Tarayıcılar CSS'yi W3C CSS Syntax Module'e göre ayrıştırır; bu modül tüm boşlukları (boşluk, sekme, yeni satır) eşdeğer token ayırıcıları olarak ele alır. Bildirimler, seçiciler veya değerler arasında boşluk eklemek veya kaldırmak hesaplanan stiller üzerinde hiçbir etkiye sahip değildir. Tek istisna, content: "merhaba dünya" gibi dize değerlerindeki boşluklardır; biçimlendirici bunları olduğu gibi korur.
CSS girintisi için kaç boşluk kullanmalıyım?
En yaygın iki kural 2 boşluk ve 4 boşluktur. Google'ın stil kılavuzu ve Prettier'ın varsayılanı 2 boşluk kullanır. WordPress CSS kodlama standartları sekme kullanır. Performans farkı yoktur. Ekibinizin zaten kullandığı şeyi seçin ya da mevcut JavaScript/HTML kodunuzla tutarlı olan tercihi uygulayın.
Bu araçla SCSS, LESS veya diğer CSS önişlemcilerini biçimlendirebilir miyim?
Bu araç standart CSS sözdizimini biçimlendirir. SCSS ve LESS, CSS sözdiziminin büyük kısmını paylaşır; bu nedenle basit önişlemci kodu genellikle doğru biçimlenir. Ancak @mixin, @include ve iç içe kural kümeleri gibi SCSS'ye özgü yapılar beklendiği gibi işlenmeyebilir. SCSS için Prettier'ı SCSS ayrıştırıcısıyla veya sass-formatter uzantısıyla kullanın.
CSS biçimlendirme ile CSS güzelleştirme aynı şey midir?
Evet. CSS biçimlendirici, CSS güzelleştirici ve CSS pretty-printer terimleri hepsi aynı işlemi tanımlar: CSS koduna tutarlı boşluklar eklemek. Farklı araçlar farklı adlar kullanır ancak çıktı aynıdır: satır başına tek bildirim içeren girintili, okunabilir CSS.
Biçimlendirilmiş CSS neden özgün dosyadan farklı sayıda satır içeriyor?
Küçültülmüş veya sıkıştırılmış CSS, tek bir satıra birden fazla bildirim yerleştirir ya da kural kümeleri arasında satır sonlarını atlar. Biçimlendirici her bildirimin ardından bir satır sonu ve kural kümeleri arasında bir boş satır ekler; bu satır sayısını artırır. Gerçek CSS içeriği (seçiciler, özellikler, değerler) değişmez.
Sürüm kontrolüne biçimlendirilmiş mi yoksa küçültülmüş CSS mi eklemeliyim?
Biçimlendirilmiş CSS ekleyin. Sürüm kontrolü diff'leri satır tabanlıdır; bu nedenle satır başına tek bildirim içeren biçimlendirilmiş CSS temiz ve incelenebilir diff'ler üretir. Küçültülmüş CSS, incelenmesi imkânsız tek satırlık diff'ler oluşturur. Küçültmeyi, kaynak format olarak değil, derleme adımı olarak çalıştırın. PostCSS, cssnano veya paketleyicinizin CSS eklentisi gibi araçlar üretim küçültmesini otomatik olarak yönetir.