Tasarım diliYerleşim ve biçim

Tasarım dili Temeller

Yerleşim ve biçim

Tek bir sütun, birkaç bölüm ritmi ve başka sistemlerin kutu çizdiği yerde ince bir çizgi. Bu sayfa web sitesinin kapsayıcısını, aralıklarını, çizgilerini, tonlarını, bölünmelerini ve biçimlerini anlatır. Her değer onu tanımlayan dosyadan okunur.

Tek kapsayıcı.

#

Her sayfa tek bir sütuna, sitenin stil dosyasındaki wrap yardımcı sınıfına oturur. Bu sınıf içeriği ortalar, 1200px genişlikte büyümeyi bırakır ve iki yanda 28px genişliğinde bir oluk tanımlar; böylece en geniş içerik satırı 1144px olur. İkinci, daha dar bir kapsayıcı da, içinde bir sütun ızgarası da yoktur.

wrap yardımcı sınıfı 1440px ve 390px genişliğindeki pencerelerde, sitenin stil dosyasındaki değerlerden aynı ölçekte çizildi.
Pencere genişliğine göre içerik genişliği
Pencerewrapİçerik
320px320px264px
390px390px334px
900px900px844px
1280px1200px1144px
1440px1200px1144px

İçerik genişliği, wrap genişliğinden iki oluk çıkarılarak bulunur. 1200px altında wrap pencereyi doldurur; üstünde yan boşluklar büyür, sütun yerinde kalır.

Oluğu korumak

wrap bir Tailwind yardımcı sınıfıdır; utilities katmanında durur ve bir bileşenin kendi stilleri onu ezer. Bu yüzden wrap taşıyan bir öğe yalnızca dikey iç boşluğunu, padding-block ile yazar. padding kısaltması yatay iç boşluğu da belirler ve oluğu siler.

Kullanımda kısaltmayı yazan bir öğe yok; her wrap her pencere genişliğinde oluğunu korur.

Okuma genişliği

Daha dar ölçüler bileşenlerin içinde, çoğunlukla ch birimiyle verilir. Araştırma yazıları ve yasal metinler en fazla 68ch genişliğinde tek bir sütun kullanır ve bu sütun kapsayıcıda ortalanır. 1180px ve üstünde sağa, 56px uzağa 220px genişliğinde bir içindekiler şeridi eklenir.

Kenardan kenara sahneler

Ekrana sabitlenen üç sahne kapsayıcının dışına bilerek çıkar: ana sayfanın açılışı ve iki kaydırma sahnesi, yani ana sayfadaki sonuçlar sahnesi ile Zero Door sayfasındaki karar sahnesi. Açılışın sahnesi pencereyi doldurur, metni ise wrap içinde kalır. Diğer ikisinde sahne pencerenin sağ kenarına kadar uzanır ve metin sütunu sol iç boşluğunu kendisi belirler: max(28px, calc((100vw - 1200px) / 2 + 28px)). Bu değer 1200px genişliğe kadar oluğa, daha geniş pencerelerde wrap'in yan boşluğu ile oluğun toplamına eşittir. Böylece metin her pencere genişliğinde sayfanın geri kalanıyla aynı sütun kenarından başlar.

Sabit üst menünün altında

Üst menü sayfa kayarken yukarıda kalır: 66px yüksekliğinde bir satır ve altında 1px kalınlığında bir kıl çizgi. Klavye odağı alabilen her öğenin üstünde 84px, bağlantıların atladığı Section bileşeninin üstünde 80px kaydırma payı bulunur; böylece hiçbiri menünün altında kalmaz.

  • wrap yardımcı sınıfı en fazla 1200px genişliğindedir ve iki yanda 28px genişliğinde bir oluk tanımlar.

    NedenTek bir sütun kenarı üst menüyü, her bölümü ve alt bilgiyi hizalar. Test yardımcı sınıfı sitenin stil dosyasından okur; bir değer değişirse ya da oradaki bir medya sorgusu onu değiştirirse başarısız olur.

    TestHer değişiklikte bir testle korunur.

  • wrap taşıyan bir öğe yalnızca dikey iç boşluğunu, padding-block ile yazar.

    NedenBileşenin kendi iç boşluğu utilities katmanını ezer; padding kısaltması bu yüzden oluğu siler. Test, wrap taşıyan bir öğeye yatay iç boşluk yazan her stili bulur; bilinen istisnalar listesinde olmayan birini bulursa başarısız olur. Bu liste bugün boştur.

    TestHer değişiklikte bir testle korunur.

  • Klavye odağı sabit üst menünün altında gizlenmez.

    NedenWCAG 2.2 başarı ölçütü 2.4.11. Odaklanabilen her öğenin üstünde menünün yüksekliğinden fazla, 84px kaydırma payı vardır. Testler /, /zero-door ve /tr/contact sayfalarında, masaüstü penceresinde ve bu pencere 390px genişliğe daraltılmışken bir kez daha ileri ve geri sekme tuşuyla gezer; odaktaki bir öğe tamamen örtülürse başarısız olur.

    TestHer değişiklikte bir testle korunur.

  • Tek bir kapsayıcı vardır. Daha dar ölçüler bileşenlerin içinde, çoğunlukla ch birimiyle verilir.

    Nedenİkinci bir kapsayıcı ikinci bir sütun kenarı demektir. ch biriminde bir ölçü yazı boyutunu izler; satır her genişlikte okunur kalır.

    İncelemeBir testle değil, incelemeyle korunur.

Ritmi bölümler belirler.

#

Web sitesinde bir aralık ölçeği yoktur. Dikey boşluğu sayfayı oluşturan bileşenler belirler ve her biri kendi iç boşluğunu taşır. Bir iç sayfa bölümünün üstünde ve altında her pencere genişliğinde 72px boşluk vardır.

Bir iç sayfanın üst üste dizdiği dört bant, gerçek boyutta: PageHero, paper üzerinde bir Section, paper-2 üzerinde bir Section ve kapanıştaki CtaBand2. Köşeli işaretler her iç boşluğu gösterir; değerler bileşenin kendisinden okunur.
Sayfa düzeyindeki bantların dikey iç boşluğu
BileşenÜst ve alt900px ve altı
Section72px / 72pxaynı
CtaBand272px / 72pxaynı
CtaBand72px / 72pxaynı
PageHero72px / 40pxaynı
TrustHero64px / 56px40px / 32px
ResearchHero64px / 56px40px / 32px
ServicesHero64px / 56px40px / 32px
DoorHero64px / 56px40px / 32px
CompanyHero64px / 56px40px / 32px
Principles96px / 96pxaynı
Footer64px / 32pxaynı
Article72px / 32pxaynı
LegalDoc72px / 32pxaynı

Bu tablodaki her değer 8'in katıdır: 32px, 40px, 56px, 64px, 72px ve 96px. Derleme ve bir birim testi bunu denetler; bir bandın iç boşluğu değişirse bu sayfayla birlikte gözden geçirilir.

Bölüm içindeki satırlar

Sırayla yön değiştiren özellik satırları kendi iç boşlukları ve aralarındaki kıl çizgiyle ayrılır: Zero Door sayfasında üstte ve altta 48px, Hizmetler sayfasında 56px. 900px ve altında bu değerler 36px ve 40px olur.

Bileşenlerin içinde

Bir bileşenin içinde aralıklar düz piksel değerleriyle yazılır. Yayındaki bileşenlerde padding, margin ve gap için yazılmış sıfırdan büyük 810 değerin 772 tanesi çift sayıdır, 471 tanesi 4'ün, 268 tanesi 8'in katıdır. En çok kullanılanlar: 10px, 12px, 14px, 28px ve 8px. Bu değerler 4 ya da 8 piksellik bir ızgaraya oturmaz; bu sayfa da varmış gibi bir ızgara göstermez. Zero Door arayüzünün ise bir aralık ölçeği vardır; sayfanın sonunda yer alır.

  • İç sayfaları Section ile kurun ve CtaBand2 ile kapatın.

    Nedenİkisi de aynı 72px iç boşluğu, üstte bir kıl çizgiyi ve 80px kaydırma payını taşır; böylece her iç sayfa aynı ritmi korur ve çapa bağlantıları aynı yere iner.

    İncelemeBir testle değil, incelemeyle korunur.

  • Sayfa düzeyindeki iç boşlukları 8'in katlarında tutun.

    NedenYukarıdaki tabloda her bant buna uyar. Büyük ritim düzenli kalır, bileşenler ise daha ince adımlar kullanmakta serbest kalır. Test her bandı kendi bileşeninden okur.

    TestHer değişiklikte bir testle korunur.

Yapıyı ince çizgiler taşır.

#

Başka sistemlerin her öğeyi bir kutuya koyduğu yerde web sitesi çizgi çeker. Yapılandırılmış bir küme 1px kalınlığında bir mürekkep çizgisiyle açılır, öğeleri aynı kalınlıkta kıl çizgilerle ayrılır, numaralı öğeler sıralarını Geist Mono ile taşır. Bu sayfada ince çizgi 1px kalınlığındaki her çizgidir; kıl çizgi ise --color-hair ile çizilenidir.

  1. 1px kalınlığında bir mürekkep çizgisi kümeyi yalnızca bir kez, en üstte açar. Bir grubun nerede başladığını gösterir.

  2. Aynı kalınlıkta kıl çizgiler öğeleri ayırır. Ayırdıkları metinden daha açıktırlar.

  3. Sıra numarası Geist Mono ile, 11px boyutunda, accent-deep renginde ve iki haneye tamamlanarak yazılır.

Çizgili sütunlar; Mimari sayfasındaki ayak izi listesinin işaretlemesi ve stilleriyle kuruldu. 900px ve altında sütunlar alt alta dizilir, yan çizgiler üst çizgiye dönüşür.

Çizgili satırlar

Mürekkep çizgisi
Yapılandırılmış bir kümeyi açar: çizgili sütunlar, çizgili satırlar, numaralı listeler ve sözlük terimleri.
Kıl çizgi
Öğeleri ayırır, kenardan kenara her bandı açar ve her başlık alanını kapatır.
Hair-2 çizgisi
Duraklatma düğmesi gibi bir kontrol öğesinin ve görsellerin içindeki kartların kenarını çizer.
Vurgu çizgisi
Üst menüde bulunduğunuz sayfayı ve bir yazıdaki alıntıyı işaretler; 2px kalınlığındadır.

Kıl çizgili liste

  • Üstteki kıl çizgi daha hafif bir listeyi işaret eder.
  • Her öğe kendi kıl çizgisiyle kapanır.
  • Sıra numarası da mürekkep de yoktur; liste sakin kalır.
Üstte çizgili satırlar: Mimari ve Fiyatlandırma sayfalarındaki tanım listelerinde olduğu gibi, en üstte bir mürekkep çizgisi ve her satırın altında bir kıl çizgi. Altta ise Fiyatlandırma ve çözüm sayfalarındaki gibi, mürekkep yerine kıl çizgiyle açılan daha hafif bir liste.

Kullanımda: hangi yapı hangi içeriği taşır

Çizgili sütunlar
Yan yana okunan, eşit ağırlıkta üç paralel madde.
Çizgili satırlar
Bir terim ve tanımı ya da bir etiket ve değeri.
Kıl çizgili liste
Çevresindeki metni destekleyen kısa, numarasız maddeler.

Kullanımdaki çizgiler

Mürekkep çizgisi
border-top: 1px solid var(--color-ink)
Kıl çizgi
border-top: 1px solid var(--color-hair)
Hair-2 çizgisi
border: 1px solid var(--color-hair-2)
Vurgu çizgisi
border-left: 2px solid var(--color-accent)
YapınKümeyi tek bir mürekkep çizgisiyle açın, öğeleri kıl çizgilerle ayırın.
YapmayınMürekkep çizgisini öğelerin arasında tekrarlamayın, kümeyi onunla kapatmayın.
  • İçeriği yapılandıran 1px kalınlığındaki mürekkep çizgisi yalnızca bir kümenin üst kenarıdır.

    NedenMürekkep çizgisi bir grubun nerede başladığını söyler. Öğelerin arasına girerse listeyi bir deftere çevirir ve bu anlamını yitirir. Test sitedeki ve bu sayfadaki her bileşenin stilini okur; mürekkep düğme (bir kontrol öğesi), ana sayfada açılmış bir kuralın çerçevesi (bir kutu) ve yukarıdaki Yapmayın örneği dışında başka bir kenarda mürekkep bulursa başarısız olur.

    TestHer değişiklikte bir testle korunur.

  • Kenardan kenara her bant bir kıl çizgiyle açılır, her başlık alanı bir kıl çizgiyle kapanır.

    NedenTek bir çizgi ve bir ton değişimi bandın değiştiğini gösterir; hiçbir bandın kutuya ya da gölgeye ihtiyacı kalmaz.

    İncelemeBir testle değil, incelemeyle korunur.

İki kâğıt, bir açık ton.

#

Bölümler paper ya da paper-2 üzerinde durur ve sayfa genellikle ikisi arasında sırayla geçer; böylece her bölüm kendi bandı olarak okunur. Bant zemini olarak accent renginin açık tonu, accent-tint, tek bir yere ayrılmıştır: sayfayı bir eylem çağrısıyla kapatan banda.

Mimari sayfası, kaynağından okunduğu sırayla: 7 bölüm paper ile paper-2 arasında sırayla geçer ve sayfa accent-tint üzerinde kapanır.
  • --color-paper#fdfaf6Sayfanın kendisi ve varsayılan Section.
  • --color-paper-2#f6f3eeTonu paper-2 olan Section, alt bilgi ve görsel çerçeveleri.
  • --color-accent-tint#d9f5f3Yalnızca kapanıştaki eylem çağrısı bandının zemini.
  • --color-ink#0f1c26Koyu bantlar ve paneller: Zero Door sayfasındaki kanıt şeridi, kod ve dosya panelleri.
Her ton üzerinde metin, kontrast tokenlardan hesaplandı
Metin rengipaperpaper-2accent-tint
ink16,61:1 AAA15,62:1 AAA15,07:1 AAA
ink-muted6,85:1 AA6,44:1 AA6,21:1 AA
ink-subtle4,89:1 AA4,60:1 AA4,44:1 geçmez
accent-deep6,65:1 AA6,26:1 AA6,04:1 AA

Her tonun tanımlandığı yer

paper
body { background: var(--color-paper) }
paper-2
.sec.paper-2 { background: var(--color-paper-2) }
accent-tint
.cta { background: var(--color-accent-tint) }
accent-tint
.band { background: var(--color-accent-tint) }
ink
.proof { background: var(--color-ink) }

accent-tint üzerinde ink-subtle 4,5:1 değerine ulaşmaz. Bu yüzden kapanış bantlarında metin ink, ink-muted ve accent-deep ile yazılır.

Sırayla geçmek bir alışkanlıktır.

Kullanımda Mimari, Fiyatlandırma ve çözüm sayfaları tonları sıkı biçimde sırayla dizer; Şirket, Güven merkezi ve Zero Door sayfaları ise aynı tondaki iki bölümü art arda kullanır. Kod bu sıralamayı dayatmaz; bu yüzden bu sayfa ona kural demez.

  • accent-tint'i bant zemini olarak yalnızca kapanıştaki eylem çağrısında kullanın.

    NedenAccent doğrulanmış sinyal demektir. Bant olarak sayfada bir kez, sayfanın okurdan bir şey yapmasını istediği yerde görünür. Başka bir bant zemininde accent-tint kullanırsa test başarısız olur; görsellerin içindeki etiketler ve satırlar onu kullanabilir.

    TestHer değişiklikte bir testle korunur.

Oranlı bölünmeler, sütun ızgarası yok.

#

Web sitesinin bir sütun ızgarası yoktur. Metin ve görseli yan yana koyan bölünmeler her bileşende eşit olmayan fr oranlarıyla yazılır; böylece bir taraf, çoğunlukla metin, öbüründen belirgin biçimde dar olur. İşin çoğunu dört oran görür.

Bölünmüş başlık alanları5fr 6fraralık 56px

metin5fr494,5pxgörsel6fr593,5px

Güven merkezi, Araştırma ve Şirket başlık alanları; Kariyer

Özellik satırları5fr 7fraralık 56px

metin5fr453,3pxgörsel7fr634,7px

Zero Door ve Hizmetler sayfalarındaki özellik satırları

Ters satırlar7fr 5fraralık 56px

görsel7fr634,7pxmetin5fr453,3px

Her ikinci özellik satırı

Tanım satırlarıminmax(0, 4fr) minmax(0, 8fr)aralık 40px

terim4fr368pxtanım8fr736px

Mimari ve Fiyatlandırma sayfalarındaki tanım listeleri

Her çubuk, oranı ve sütun aralığı kaynak dosyasından alınmış gerçek bir CSS ızgarasıdır. Sayılar, her sütunun 1144px genişliğindeki tam sütunda aldığı genişliktir.
Kullanımdaki iki sütunlu bölünmelerin oranları
OranSütun aralığı1144px içinde genişlikler
5fr 6fr56px494,5px / 593,5px
5fr 7fr56px453,3px / 634,7px
7fr 5fr56px634,7px / 453,3px
4fr 8fr40px368px / 736px

Dar ekranda önce metin

900px ve altında her bölünme tek sütuna iner; aralık çoğunlukla 28px olur. Ters bir satır geniş ekranda metnini order: 2 ile ikinci sütuna taşır ve kırılım noktasında bunu 0 değerine geri alır; böylece telefonda metin her zaman görselden önce gelir.

Bölünmüş başlık alanları ve özellik satırları yalın fr izlerini korur ve görsel sütunlarına min-width: 0 verir; böylece geniş bir çizim kendi izini genişletemez. Yeni bir bölünme, tanım satırlarının yaptığı gibi her izi minmax(0, 5fr) olarak yazabilir; o zaman ikisine de gerek kalmaz.

Eşit sütunlar ve kart ızgaraları

Üçlü kümeler üç eşit iz kullanır; Mimari sayfasında bunlar repeat(3, minmax(0, 1fr)) olarak yazılır, yani küçülebilir. Mimari sayfasındaki ikili kartlar gibi birkaç çift iki eşit iz kullanır. Kart koleksiyonlarının çoğu ise boyutunu kendisi belirler: en küçük genişliği olan bir auto-fit iz; böylece sütun sayısı eldeki alanı izler.

  • Metin ve görseli yan yana koyan bir bölünmeyi kapsayıcının içinde, eşit olmayan bir fr oranıyla yazın.

    NedenHizalanacak bir ızgara yoktur. Oran her düzen için ayrı seçilir; eşit olmayan bölünme metni daha büyük bir görselin yanında okunur bir genişlikte tutar. Uzun bir içerik sütunu genişletmesin diye görsel sütuna min-width: 0 verin ya da izleri minmax(0, …) ile yazın.

    İncelemeBir testle değil, incelemeyle korunur.

  • Dar ekranda metin görselden önce gelir.

    NedenDar ekranda görsel sıra kaynak sırasına döner; okuma ve odak sırası okurun gördüğünü izler (WCAG 1.3.2 ve 2.4.3). Geniş ekranda yalnızca sütunun yeri değişir, anlam değişmez.

    İncelemeBir testle değil, incelemeyle korunur.

Tek ana kırılım noktası.

#

Web sitesi önce masaüstü için tasarlanır. Düzenini değiştiren bileşenler bunu çoğunlukla max-width sorgularıyla yapar; yayındaki bileşen ve stil dosyalarından genişlik sorgusu içeren 46 dosyanın 40 tanesi aynı değeri kullanır: 900px. Birkaç bileşen kendine ait bir kırılım noktası ekler. Kırılım noktası tokenı yoktur; her değer onu kullanan bileşenin içinde yazılıdır.

  • max-width: 1199.98px

    Ana sayfadaki dört kural bir akordeona katlanır; daha geniş pencerelerde yan yana, açılınca genişleyen çerçeveler olarak durur.

  • min-width: 1180px

    Yazılar ve yasal metinler metnin yanında bir içindekiler şeridi kazanır.

  • max-width: 1100px

    Sözlük harfleri kenar boşluğuna taşmayı bırakır.

  • max-width: 1000px

    Mimari sayfasındaki dört entegrasyon sütunu ikiye iner.

  • max-width: 900pxana

    Üst menü bir menü düğmesine katlanır, bölünmeler ve çizgili sütunlar tek sütuna iner, başlık alanları sıkılaşır.

    46 dosyadan 40

  • max-width: 860px

    Sözlük satırları alt alta dizilir.

  • max-width: 760px

    Mimari akış diyagramı kendi çerçevesinin içinde kayar.

  • max-width: 699.98px

    Kural akordeonu tek sütunda kalır ve her açıklama simgesinin altından akar; daha geniş pencerelerde iki sütun olur.

  • max-width: 620px

    Entegrasyon sütunları teke iner.

Her genişlik sorgusunun nerede geçerli olduğu, 320px ile 1440px genişliğindeki pencereler arasında. Her satır, site derlenirken altında adı geçen dosyalarda denetlenir. Sayım yayındaki sitenin gösterdiği bileşenleri kapsar; bu dokümantasyon bölümünü ve ana sayfanın kullanmadığı açılış çeşitlerini dışarıda bırakır.

900px ve altında neler değişir

  • Üst menünün bağlantı satırı ve sağdaki öğeler gizlenir; bir menü düğmesi aynı bağlantıları içeren bir panel açar.
  • İki sütunlu bölünmeler tek sütuna iner, önce metin gelir.
  • Çizgili sütunlar alt alta dizilir, yan çizgileri üst çizgiye dönüşür.
  • Bölünmüş başlık alanlarının üst ve alt boşluğu 64px / 56px değerinden 40px / 32px değerine iner.
  • Alt bilginin ızgarası iki sütuna iner.
  • Önce masaüstü için tasarlayın ve max-width: 900px değerinde geçiş yapın.

    NedenOrtak tek bir kırılım noktası, üst menünün, bölünmelerin ve çizgili kümelerin pencere daraldıkça tek tek değil, birlikte değişmesi demektir. 900px dosyaların çoğunun kullandığı sorgu olmaktan çıkarsa test başarısız olur.

    TestHer değişiklikte bir testle korunur.

  • Bir kırılım noktasını ona ihtiyaç duyan bileşenin içinde, düz bir değer olarak yazın.

    NedenBaşvurulacak bir kırılım noktası tokenı yoktur; değer, değiştirdiği düzenle aynı yerde durur ve tek bakışta okunur.

    İncelemeBir testle değil, incelemeyle korunur.

320px genişlikte hiçbir sayfa yana kaymaz.

#

Her sayfa, WCAG 2.2'nin 1.4.10 başarı ölçütü için kullandığı genişlik olan 320 CSS pikselde, sayfa yana kaymadan yeniden akmak zorundadır. Bir test derlenen her sayfayı bu genişlikte açar; belge pencereden genişse başarısız olur.

Düzenler 320px içinde nasıl kalır

minmax(0, 1fr) izleri
Uzun bir sözcüğün, özetin ya da yolun sütunu pencerenin dışına taşırmasını önler.
Görsel sütunlarda min-width: 0
Bir çizimin ızgara hücresini ait olduğu izden daha geniş olmaya zorlamasını önler.
Odaklanabilir kaydırma kutuları
Geniş tabloların, kodun ve diyagramların sayfayı yana itmesini önler. Bunlar kendi kutularının içinde kayar; kutu klavye odağı alır, fare olmadan da kaydırılabilir.
Metinde ve kodda overflow-wrap
Kırılacak yeri olmayan metnin sütunundan taşmak yerine alt satıra geçmesini sağlar.
En küçük genişliği olan auto-fit izler
Kart ızgaralarının telefonda üç sütundan teke inmesini sağlar.

Bu sayfadaki her tablo böyle bir kutunun içindedir. 320px genişlikte tablo kendi içinde kayar, sayfa yerinde durur.

Yapınİzi içeriğinden daha dar olabilecek biçimde yazın: minmax(0, 1fr) ya da öğede min-width: 0. Özet o zaman sütunun içinde alt satıra geçer.
YapmayınYalın bir 1fr izine uzun bir sözcük koymayın. Böyle bir izde en küçük genişlik en uzun sözcüğün genişliğidir; iz sütunun dışına taşar ve 320px genişlikte sayfa yana kayar.
  • 320 CSS px genişlikte hiçbir sayfa yana kaymaz.

    NedenWCAG 2.2 başarı ölçütü 1.4.10, Yeniden akış. Test derlemedeki her sayfayı gezer; yeni bir sayfa eklendiği gün kapsama girer.

    TestHer değişiklikte bir testle korunur.

İki yarıçap, köşeli çizgiler.

#

Biçim ölçülüdür. İki köşe yarıçapı tokenı vardır: kontrol öğeleri ve görsel üstü etiketler için 6px, kartlar ve görsel çerçeveleri için 8px. Çizgili yapılar, bölüm bantları ve ana sayfadaki kuralların çerçeveleri köşeli kalır: bunlar kutu değil, çizgidir.

  • Düğme--radius-sm6px
  • Çerçeveli düğme--radius-sm6px
  • Görsel üstü etiket--radius-sm6px
  • Kart--radius-md8px
  • Görsel çerçevesi--radius-md8px
  • Duraklatma düğmesidüz değeryüzde 50
  • Mono etiketdüz değer4px
  • Arama çipidüz değer999px
  • Çizgili kümeyok0
Her biçim, kaynağından okunan yarıçapla çizildi: sitenin stil dosyasındaki gerçek düğme sınıfları; görsel üstü etiket, kart, görsel çerçevesi, yaygın düz değerli biçimler ve çizgili küme için ise temsili örnekler.

Kullanımdaki yarıçaplar

--radius-sm6px
Düğmeler, içeriğe geç bağlantısı, form alanları, menü düğmesi ve bağlantıları, görsel üstü etiketler ve damgalar; ayrıca yazılardaki kod blokları ve görseller, yasal metin uyarısı ve bazı bulgu kartları
--radius-md8px
Kartlar, görsel çerçeveleri, menü paneli ve koyu kod panelleri
daireyüzde 50 · 22 kullanım
Duraklatma düğmesi, adım daireleri, harita düğümleri
küçük etiket4px · 10 kullanım
Küçük mono etiketler, rozetler, önem derecesi etiketleri ve noktalar
3px4 kullanım
Yaygın biçimlerden biri değil
2px2 kullanım
Yaygın biçimlerden biri değil
12px2 kullanım
Yaygın biçimlerden biri değil
kapsül999px · 2 kullanım
Zero Door görsellerindeki arama çipleri ve olay kapsülü
8px1 kullanım
Yaygın biçimlerden biri değil
10px1 kullanım
Yaygın biçimlerden biri değil
calc(8 * var(--u))1 kullanım
Yaygın biçimlerden biri değil
köşeli0
Çizgili kümeler, bölüm bantları, ana sayfadaki kuralların çerçeveleri

İki tokenın dışında yarıçaplar düz değerle yazılır. Yaygın olanlar daireler ve 4px değeridir; 999px ise iki kapsül biçimini yuvarlar. Yukarıdaki satırlar yayındaki her bileşenden okunur; yeni bir düz değer burada görünür ve gözden geçirilene kadar bir birim testini kırar. Geri kalanlar yalnızca birkaç yerde geçer: 3px, 2px, 12px, 8px, 10px ve calc(8 * var(--u)).

  • İki köşe yarıçapı tokenı 6px ve 8px değerindedir.

    NedenDaha büyük bir token yoktur. Test token dosyasını okur; bir değer değişirse ya da üçüncü bir yarıçap tokenı eklenirse başarısız olur.

    TestHer değişiklikte bir testle korunur.

  • Kontrol öğelerinde ve görsel üstü etiketlerde radius-sm, kartlarda ve çerçevelerde radius-md kullanın.

    NedenKullanımda kontrol öğeleri ve yüzen etiketler çoğunlukla radius-sm, kartlar ve çerçeveler radius-md alır; bu yüzden köşe çoğu zaman bir kontrol öğesini bir kapsayıcıdan ayırır. Ayrım kesin değildir: yazılardaki kod blokları, yasal metin uyarısı ve bazı bulgu kartları radius-sm alır.

    İncelemeBir testle değil, incelemeyle korunur.

  • Çizgili yapıları köşeli tutun.

    NedenÇizgili bir küme çizgilerden oluşur. Köşelerini yuvarlamak onu yeniden bir kutuya çevirir.

    İncelemeBir testle değil, incelemeyle korunur.

Tek gölge, yüzen nesneler için.

#

Tek bir gölge tokenı vardır, bir yükselti ölçeği yoktur. Gölge yalnızca bir sayfanın ya da bir görselin üzerinde yüzen nesnelerde kullanılır: menü paneli, görsel üstü etiketler ve damgalar, çipler ve görsellerin içindeki yüzen kartlar. Sayfanın akışındaki kartların bir kenar çizgisi vardır, gölgesi yoktur.

--shadow-floatTek gölge tokenı, token dosyasının yazdığı gibi
--shadow-float: 0 12px 30px -18px rgb(15 28 38 / 0.45);

Gölge siyahla değil, mürekkep rengiyle (--color-ink #0f1c26) ve 0,45 alfa değeriyle düşer.

İki yarıçap tokenı ve gölge sitenin token dosyasında durur; dosyanın tamamı tokens.css olarak indirilebilir.

Üzerinde koyu bir damga ve yüzen bir kart bulunan, ikisi de gölge tokenını taşıyan bir görsel çerçevesi; yanında gölgesi olmayan, sayfa akışındaki bir kart.

Yayındaki bileşenlerde gölgenin her kullanımı

Dar ekranda menü paneli
.menu .panel
Görsellerin üzerindeki etiketler
.tag
Kanıt damgası
.stamp
Görsellerin içindeki yüzen kartlar
.card
Bir görselin içindeki arama çubuğu
.bar
Kaydırma sahnelerinde ve görsellerde çipler
.chip, .chip.bare
  • --shadow-float'u yalnızca yüzen nesneler düşürür.

    NedenGölge, bir şeyin sayfanın üstünde durduğunu söyler. Akıştaki kartlar bunun yerine kıl çizgi bir kenarla ve tonla ayrılır. Test yayındaki bileşenlerde tokenın her kullanımını listeler ve yeni bir kullanımda başarısız olur; böylece her yeni kullanım bu kurala göre gözden geçirilir.

    TestHer değişiklikte bir testle korunur.

Zero Door'da aralık ve biçim

#

Zero Door arayüzü aynı dili sakin bir üslupla konuşur ve web sitesinin yapmadığını yapar: bir aralık ölçeği tanımlar. Aşağıdaki token değerleri ürünün token dosyasından, 2026-08-23 tarihli hâlinden alındı.

Bu bölümdeki ürün değerleri ürünün token ve bileşenlerinden alınmış bir anlık görüntüden gelir; bu anlık görüntü product-tokens.json olarak yayımlanır.

Aralık ölçeği

Ölçek 2px ile 64px arasında 12 adımdan oluşur. Her çubuk adımının gerçek genişliğinde çizildi. Kodda adımlar tek bir değişkeni besler, Yoğunluk başlığı altında gösterilen satır iç boşluğunu; bileşenler aralıklarını aynı değerleri taşıyan Tailwind yardımcı sınıflarıyla verir.

  • --space-12px
  • --space-24px
  • --space-36px
  • --space-48px
  • --space-512px
  • --space-616px
  • --space-720px
  • --space-824px
  • --space-932px
  • --space-1040px
  • --space-1148px
  • --space-1264px

Kabuk

Her ekranı çevreleyen çerçeve bileşenlerinde token olarak değil, Tailwind sınıfları ya da bir bileşen varsayılanı olarak yazılır. Aşağıdaki değerler bu bileşenlerden, 2026-10-09 tarihli hâllerinden okunur. İçerik oluğu 24px; web sitesinde ise 28px.

Zero Door kabuğu

İçerik oluğu24px
Sayfa başlıkları, sayfalama ve tabloların dış hücreleri buna hizalanır.Koddapx-6
Üst çubuk56px
Üstteki çubuğun yüksekliği; komut paletini açan arama düğmesi ve kullanıcı menüsü bu çubuktadır.Koddah-14
Kenar çubuğu240px
Gezinme kenar çubuğunun açık genişliği.Koddaw-60
Simge şeridi56px
Simgelerden oluşan bir şeride katlanmış kenar çubuğu.Koddaw-14
Yan panel480px
Yan panelin varsayılan genişliği; pencere genişliğini aşmaz.Koddawidth = 480
Komut paleti576px
Komut paletinin en fazla genişliği.Koddamax-w-xl

Yarıçap

Üründe üç yarıçap tokenı vardır: giriş alanları, rozetler, etiketler, ipuçları ve küçük düğmeler için 4px; orta ve büyük düğmeler, menüler ve boş durumlar için 8px; komut paleti gibi en büyük yüzeyler için 12px.

  • --radius-sm4px
  • --radius-md8px
  • --radius-lg12px

Gölge

Ürün her tema için iki gölge tokenı tanımlar. Düz gölge seçili bir öğeyi, örneğin kenar çubuğundaki etkin satırı işaretler; yükseltilmiş gölge katmanların altında durur: iletişim kutuları, yan paneller, çekmeceler, menüler, ipuçları ve komut paleti. İki token da siyahla düşer; web sitesi ise tek gölgesini mürekkep rengiyle düşürür.

Açık tema

--shadow-flat0 1px 2px rgb(0 0 0 / 0.04)
--shadow-raised0 8px 24px rgb(0 0 0 / 0.08)

Koyu tema

--shadow-flat0 1px 2px rgb(0 0 0 / 0.20)
--shadow-raised0 8px 24px rgb(0 0 0 / 0.40)

Yoğunluk

Ürün iki yoğunluk kipi sunar. Sıkı kip kodda tek bir şeyi değiştirir: tablo satırlarının dikey iç boşluğu 12px değerinden 6px değerine iner. Varsayılan rahat kiptir; kullanıcı menüsündeki bir kontrol öğesi ikisi arasında geçiş yapar.

Rahat --space-5

  • Satır 1iç boşluk 12px
  • Satır 2iç boşluk 12px
  • Satır 3iç boşluk 12px

Sıkı --space-3

  • Satır 1iç boşluk 6px
  • Satır 2iç boşluk 6px
  • Satır 3iç boşluk 6px

Web sitesiyle ortak olan: radius-md ikisinde de 8px. Farklı olan: küçük yarıçap üründe 4px, web sitesinde 6px; ürün ayrıca en büyük yüzeyleri için 12px ekler.