Gerçek yazı tipi aileleri, boşluk ve kapsayıcı ölçekleri, duyarlı ve görselli bir okuma sayfası ve eksiksiz yerel CSS form örneği içeren editoryal bir Protocol kılavuzu.
Yerel Mozilla Protocol 22.0.0 CSS ve paket yazı tipleri; özgün HTML, illüstrasyon ve JavaScript. Ağ üzerinden form gönderimi yapılmaz. · Uygulama başvurusu
02
Mozilla Protocol Tasarım Sistemi Tasarım Başvurusu
Mozilla Protocol 22.0.0 yayımlanmış belirteç JSON'u ve yerel CSS. Dolar işaretiyle başlayan adlar Sass belirteçleridir. Özgün örnek, Mozilla tipografi temasını kullanır; yoğunluk denetimleri ve dairesel illüstrasyon uygulamaya özgü tercihlerdir.
Protocol, destekleyici arayüzlerin yanı sıra yayın ve pazarlama sayfalarında da kullanılır. Örnek, büyük bir başlık ve özgün dairesel bir illüstrasyonla açılır; ardından bir makale önizlemesine ve özet bülten formuna geçer. Bu düzen, okuyucudan kontrolleri kullanmasını istemeden önce mesaja alan tanır. Yoğun bir yönetim panelinden farklıdır.
Marka temasını uygulama fikrinden ayrı tutun
Örnekte mzp-t-mozilla ve Protocol’ün yerel tipografisi kullanılır. Makale, illüstrasyon ve okuma yoğunluğu tercihi uygulamaya özgü içeriklerdir. Yerel sınıf adları ve yazı tipi dosyaları, bunu resmî bir Mozilla hizmeti hâline getirmez. Alt bilgi kapsamı açıklar; özet bülten eylemi ise yalnızca bir onay mesajını önizler.
Mozilla Protocol Tasarım Sistemi Yazı Tipleri ve Başlık Yardımcıları
Markaya özgü yazı tipi çiftini seçin
Protocol 22, Mozilla için Mozilla Headline ve Mozilla Text yazı tipi yığınlarını; Firefox içinse Metropolis ve Inter yazı tiplerini sunar. Örnekte, paketle birlikte sağlanan yazı tipleri yüklenir. Başlık ve gövde rollerini ayrı tutun: Her paragrafta ekran yazı karakteri kullanmak, editoryal hiyerarşiyi işlevsel kılan karşıtlığı ortadan kaldırır.
Başlıkların anlamsal yapısını görsel boyutlarından bağımsız tutun
Hero alanındaki başlık, mzp-u-title-lg sınıfını kullanan bir h1’dir. Destekleyici bölümlerde mzp-u-title-xs sınıfını kullanan h2, makale başlığında ise mzp-u-title-2xs sınıfını kullanan h3 bulunur. Duyarlı yardımcı sınıflar, bu sıralamayı değiştirmeden görsel boyutu değiştirebilir. Okuma yoğunluğu kontrolü yalnızca örnek paragrafları değiştirir; sayfanın tamamını veya kontrolleri yeniden boyutlandırmaz.
h1 sayfayı tanıtır.
h2, okuma önizlemesiyle formu birbirinden ayırır.
h3, makale alıntısına başlık verir.
Mozilla Protocol Tasarım Sistemi Renk ve İllüstrasyon
İllüstrasyonu editoryal içerik olarak kullanın
Dairesel degradeli görsel, kısa ve erişilebilir bir açıklamayla sunulan özgün bir CSS çalışmasıdır. Sıcaktan mora uzanan renk geçişi, yeni ve resmî bir Mozilla logosu ya da Protocol tarafından sunulan bir belirteç olarak tanıtılmaz. Sayfanın geri kalanında, illüstrasyonun ve birincil eylemin rolünü belirginleştiren ölçülü, nötr yüzeyler kullanılır.
Form durumlarının anlamını ayrı ayrı belirtin
Yerel e-posta hatası, yazılı bir açıklama ve belirgin bir geçersiz alan kenarlığıyla gösterilir. Başarı durumu, girilen örnek adresi içeren ve e-posta gönderilmediğini belirten ayrı bir onay bloğunda görünür. Renkli bir hero görseli hata durumuyla yarışmamalı veya formun başarılı olup olmadığını belirsizleştirmemelidir.
Mozilla Protocol Tasarım Sistemi Bileşen ve Yerleşim Aralıkları
İki aralık ölçeğini amacına uygun kullanın
Yayımlanmış bileşen aralığı adımları 4, 8, 16, 24, 32 ve 48px’tir. Ayrı bir yerleşim ölçeği ise 64, 96 ve 192px’e kadar uzanır. Formların ve kartların içinde daha küçük ölçeği, editoryal bölümler arasındaki ritim içinse daha büyük ölçeği kullanın. Her küçük aralığı yerleşim ölçeğindeki değerlere çıkarmak, etiketle alan arasındaki ilişkiyi zayıflatır.
Daha fazla sütun eklemeden önce satır uzunluğunu sınırlayın
Mozilla Protocol Tasarım Sistemi Düğmeler, Ayrıntılar ve Form
Formun gerçek yapısını koruyun
Özet bülten örneği; görünür bir etiketi, e-posta alanı, açıklama notu, hata metni ve gönder düğmesi olan yerel bir formdur. Bileşenleri Protocol biçimlendirir; yerel sonucu doğrulama ve bildirme işini uygulama yapar. Hero eyleminde sayfa içindeki bir bölüme gittiği için bağlantı, gönderim işleminde ise düğme kullanılır.
Destekleyici açıklamalar için basit bir açılır bölüm kullanın
“Ne değişiyor?” açılır bölümü, yerel bir details/summary ikilisidir. Ana makale akışını bölmeden özel rahat ve kompakt paragraf değerlerini açıklar. Bu, sahte bir gezinme sekmesi veya gizli bir ön koşul değildir; açılır bölüm açık ya da kapalı olsa da form ve yoğunluk kontrolleri kullanılabilir.
Mozilla Protocol Tasarım Sistemi Okuma ve Doğrulama Durumları
Her seferinde tek bir okuma tercihini değiştirin
İki yoğunluk düğmesi etiketli bir grup oluşturur ve aria-pressed niteliğini sunar. “Kompakt” seçildiğinde yalnızca makaledeki paragrafların yazı tipi boyutu, satır yüksekliği ve alt boşluğu değişir. Metin, başlık ve form alanı yerinde kalır. Örnek, bu tercihi Mozilla ve Firefox marka temaları arasında geçiş yapmaktan özellikle ayrı tutar.
Yerel formun hatadan kurtarma davranışını öngörülebilir kılın
Geçersiz bir adres girildiğinde hata görünür ve odak giriş alanına geçer. Alan düzenlendiğinde eski hata temizlenir ve önceki onay mesajı gizlenir. Geçerli bir adres girildiğinde yerel olarak oluşturulan sonuç gösterilir ve odak bu sonuca geçer. “Başka bir adres dene” formu temizler, geçersiz durumunu kaldırır ve odağı giriş alanına geri getirir; eşzamansız bir abonelik işlemi olduğu ima edilmez.
Boş veya hatalı biçimlenmiş bir adres gönderip alan hata mesajını okuyun.
Bir örnek adres girip yerel onay mesajını önizleyin.
Formu sıfırlamak ve odağı giriş alanına geri getirmek için “Başka bir adres dene”yi kullanın.
Mozilla Protocol Tasarım Sistemi Erişilebilir Editoryal Kontroller
Görsele ve kontrollere farklı roller verin
İllüstrasyon, kısa alternatif metne sahip bir görsel öğesidir. Yoğunluk düğmeleri, açılır bölüm ve gönderme eylemi gerçek kontrollerdir. E-posta alanı, aria-describedby aracılığıyla hem nota hem de hataya bağlanır. Klavyeyle kullanımı desteklemek için yerel stillere görünür bir odak çerçevesi eklenir.
Yerleşim alt alta dizildiğinde de sıralamayı anlamlı tutun
Belge sıralaması başlık, okuma önizlemesi, açıklama ve form şeklindedir. Mobilde de aynı sıralama korunur; CSS formu bağlamından önceye taşımaz. Mobilde 180px boyutundaki illüstrasyon, sayfanın yatay kaymasına neden olan sabit genişlikli bir engel değil, editoryal içeriği destekleyen bir öğedir.
Mozilla Protocol Tasarım Sistemi CSS Entegrasyonu
Yayımlanmış varlıkları örnekle birlikte derleyin
Sağlanan giriş dosyası, derlenmiş bir temayı, protocol.css ve protocol-components.css dosyalarını, ardından da uygulama stil dosyasını içe aktarır. Protocol 22, tema özel özelliklerinin :root üzerinde tanımlanmasını gerektirir; yalnızca eski bir marka sınıfı eklemek tipografiyi tanımlamaz. Vite’ı başlatmadan önce protocol-theme.scss dosyasını derleyin. Modül uyumlu bir paketleyici, yazı tipi ve görsel URL’lerini izler. Aşağıdaki HTML, JavaScript ve CSS blokları örneğin tüm kaynak kodunu içerir; gizli bir bülten arka ucu veya pakete özgü bir durum sağlayıcısı yoktur.
Formu yalnızca gerçek bir abonelik hizmeti varsa genişletin
Mozilla Protocol Tasarım Sistemi Bileşen Örnekleri
index.html — eksiksiz editoryal sayfa
Anlamsal makale, yoğunluk kontrolleri, açılır bölüm ve özgün bir CSS illüstrasyon içeren yerel özet bülten formu.
html
<!doctype html>
<html lang="en">
<head><meta charset="utf-8"><meta name="viewport" content="width=device-width,initial-scale=1"><title>Reading specimen</title></head>
<body>
<main class="reading-example mzp-t-mozilla">
<header class="reading-top">
<strong>MOZILLA PROTOCOL · EDITORIAL SPECIMEN</strong
><span>Original example by OpenDesign</span>
</header>
<section class="reading-hero">
<div>
<h1 class="mzp-u-title-lg">A little more room to read.</h1>
<p>
Make space for useful ideas, quieter pages, and a reading rhythm that
feels like yours.
</p>
<a class="mzp-c-button" href="#reading-controls"
>Explore the reading preview</a
>
</div>
<div
class="orb"
role="img"
aria-label="Original warm-to-purple circular illustration"
></div>
</section>
<div class="reading-main">
<section id="reading-controls">
<h2 class="mzp-u-title-xs">Choose your reading rhythm</h2>
<p>
Compare two application-defined densities using the same short article.
</p>
<div class="density-options" role="group" aria-label="Reading density">
<button
class="mzp-c-button mzp-t-secondary"
data-density="comfortable"
aria-pressed="true"
>
Comfortable</button
><button
class="mzp-c-button mzp-t-secondary"
data-density="compact"
aria-pressed="false"
>
Compact
</button>
</div>
<article id="article-sample">
<h3 class="mzp-u-title-2xs">The open page</h3>
<p>
A useful page gives an idea enough room to breathe. Its headings show
the path, its paragraphs keep a readable measure, and its controls
remain easy to find.
</p>
<p>
Changing density should preserve the story. This preview adjusts
paragraph size and spacing without replacing the article or changing
your place in the task.
</p>
</article>
<details>
<summary>What changes in this example?</summary>
<p>
Comfortable uses 16px text with 1.6 line height. Compact uses 14px
with 1.4. These are example reading preferences, not separate official
Protocol themes.
</p>
</details>
</section>
<aside class="signup">
<h2 class="mzp-u-title-xs">Preview a reading digest</h2>
<p>
Try the form styling and local validation. No subscription is created.
</p>
<form id="reading-form" novalidate>
<label for="email">Email address</label
><input
id="email"
type="email"
autocomplete="email"
aria-describedby="email-note email-error"
/>
<p class="note" id="email-note">
Use an example address. Nothing will be sent.
</p>
<p id="email-error" class="error" role="alert" hidden>
Enter an email address, such as [email protected].
</p>
<button class="mzp-c-button" type="submit">Preview confirmation</button>
</form>
<div id="confirmation" tabindex="-1" role="status" hidden>
Local preview confirmed for <strong></strong>. No email was sent.<button
id="reset"
class="mzp-c-button mzp-t-secondary"
type="button"
>
Try another address
</button>
</div>
</aside>
</div>
<footer class="reading-footer">
Native Mozilla Protocol 22.0.0 CSS and fonts. Original illustration, copy
and JavaScript; not an official Mozilla service.
</footer>
</main>
<script type="module" src="/src/main.js"></script>
</body></html>
Markayı Sass yapılandırması seçer; bu, çalışma zamanında sınıf değiştirme yöntemi değildir.
04
Mozilla Protocol Tasarım Sistemi Ajan Kurulumu
Uygulamaya Başlangıç Noktası
Yerel önizleme için yerel CSS/fonts ve özgün betik pakete eklendi. Vite sürümünüzün desteklediği bir Node.js sürümü kullanın. Derlemeyi yeniden dağıtırken paket lisansını ve varlık atıflarını koruyun.
sh
npm create vite@latest protocol-reading -- --template vanilla
cd protocol-reading
npm install
npm install @mozilla-protocol/[email protected]
npm install --save-dev sass
npx sass --load-path=node_modules src/protocol-theme.scss src/protocol-theme.css
# Replace index.html; add src/main.js and src/protocol.css from the full examples.
npm run dev
Projeniz İçin Bir İstem
Ajan İstemi
Mozilla Protocol 22.0.0 ile editoryal bir sayfa oluşturun. Yazı tipleri, aralıklar ve kapsayıcılara ilişkin gerçek referansları inceleyin. Sağlanan eksiksiz HTML/CSS/JS düzenlemesini başlangıç noktası olarak kullanın; anlamsal başlıkları ve görünür form etiketlerini koruyun; özgün illüstrasyon ve yoğunluk tercihlerini resmî belirteçlerden ayırın. Yerel doğrulamanın ne yaptığını doğru biçimde belirtin; gerçek abonelik entegrasyonunu ancak hizmetin gereksinimleri ve izin koşulları tanımlandıktan sonra ekleyin.
05
Mozilla Protocol Tasarım Sistemi Kaynakları ve Kapsamı
Mozilla Protocol 22.0.0 sürümüne yönelik OpenDesign uygulama kılavuzu. Örnekte yayımlanmış CSS ve paketlenmiş yazı tipleri; özgün metin, illüstrasyon ve yerel form davranışıyla birlikte kullanılır. Bu, bir Mozilla ürünü, bülteni veya abonelik hizmeti değildir; marka ve varlık hakları ilgili sahiplerine aittir.