<?xml version='1.0' encoding='UTF-8'?>

<div1 id="page">
<head>Sayfalı Ortam</head>
  <div2 id="page1">
  <head>Sayfalı ortama giriş</head>

<p>Sayfalı ortam (kağıt, saydam, bilgisayar ekranında gösterilen sayfalar, vb.), belge içeriğinin kesikli sayfalara ayrıldığı <termref def="continuous-media-group">sürekli ortamdan farklıdır</termref>. Sayfalara bölünmeyi sağlamak için BB2 <titleref ref="visuren">görsel biçimleme modelini</titleref> şöyle genişletir:</p>

<olist>
<item><p><titleref ref="page-box">sayfa çerçevesi</titleref>, <titleref ref="box">çerçeveli modeli</titleref> genişleterek yazarlara sayfa boyutu, kenar boşlukları, vb. belirtme imkanı sağlar.</p></item>

<item><p>Sayfa modeli, <titleref ref="page-breaks">sayfalara bölünme</titleref>yi sağlamak adına  <titleref ref="visuren">görsel biçimleme modeli</titleref>ni genişletir.</p></item>
</olist>

<p><indexterm><primary>sayfa modeli</primary></indexterm>
<indexterm><primary>yaprak</primary></indexterm>
<termdef id="page-model" term="Sayfa modeli">BB2 <term>sayfa modeli</term> bir belgenin sonsuz genişlikte ve yükseklikteki dörtgen bir alanın (<titleref ref="page-box">sayfa çerçevesi</titleref>) içinde nasıl biçimleneceğini belirtir</termdef>. <termdef id="dt-sheet" term="yaprak">Sayfa çerçevesi, belgenin eninde sonunda yer aldığı gerçek <term>yaprağın</term> (kağıt, saydam, vs.) karşılığı olmak zorunda değildir</termdef>. BB sayfa modeli sayfa çerçevesinde biçimleme belirtir, fakat sayfa çerçevesini yaprağa aktarmak kullanıcı arayüzünün sorumluluğundadır. Bazı aktarım olasılıkları:</p>

<ulist>
<item><p>Her yaprağa bir sayfa çerçevesi aktarımı (tek taraflı baskı).</p></item>

<item><p>Aynı yaprağın iki tarafına iki sayfa çerçevesi aktarımı (çift taraflı baskı).</p></item>

<item><p>Bir yaprağa çok sayıda sayfa çerçevesi aktarımı.</p></item>

<item><p>Büyük bir sayfa çerçevesinin birden fazla yaprağa aktarımı.</p></item>

<item><p>Forma imleme. Forma imleme, kitap formalarını işaretlemek için yapılan bir işlem olup, forma imi forma tamamlandıktan sonra formanın uygun bir yerinde görünür.</p></item>

<item><p>Bir belgenin çeşitli baskı tablalarına basılması.</p></item>

<item><p>Bir dosyaya çıktılama.</p></item>
</ulist>

<p>BB2, kullanıcı arayüzlerinin sayfa çerçevelerini yapraklara nasıl aktaracağını belirtmese de, hedef yaprağın <titleref ref="page-size-prop">boyutları ve baskı yönü</titleref> hakkında birşeyler söyleyecek mekanizmaları içerir.</p>
</div2>

<div2 id="page-box">
<indexterm><primary>sayfa çerçevesi</primary></indexterm>
<head>Sayfa çerçeveleri: <code>@page</code> kuralı</head>

<p>Bir <term>sayfa çerçevesi</term> iki alan içeren bir dikdörtgen alandır:</p>

<ulist>
<item><p><indexterm><primary>sayfa alanı</primary></indexterm>
<termdef id="page-area" term="Sayfa alanı"><term>Sayfa alanı</term>. Sayfa alanı sayfanın üzerine serildiği çerçeveleri içerir. Sayfa alanının kenarları sayfa kesimleri arasında yer alan sayfa düzenininin ilk <titleref ref="containing-block">taşıyıcı blok</titleref>u olarak davranır</termdef>.</p></item>

<item><p><termdef id="margin-area" term="Dış boşluk alanı">Sayfa alanını kuşatan <term>dış boşluk alanı</term></termdef>.</p></item>
</ulist>

<note><p>BB2'de, <titleref ref="border-properties">çerçeve çizgisi nitelikleri</titleref> ve <titleref ref="padding-properties">iç boşluk nitelikleri</titleref> sayfalara uygulanmaz; ama ilerde olabilir.</p></note>

<p><indexterm><primary><code>@page</code></primary></indexterm>
<indexterm><primary>sayfa bağlamı</primary></indexterm>
Biçembent yazarları bir sayfa çerçevesinin boyutlarını, baskı yönünü, dış boşluklarını, vs.yi bir <code>@page</code> kuralı içinde belirtirler. Bir <code>@page</code> kuralı sırayla <code>@page</code> anahtar sözcüğü, bir sayfa seçici (arada boşluk olmaksızın ardından isteğe bağlı bir sayfa sözde sınıfı gelebilir) ve (<termdef id="page-context" term="Sayfa bağlamı"><term>sayfa bağlamı</term> da denen</termdef>) bir bildirim blokundan oluşur.</p>

<p><indexterm><primary>sayfa seçici</primary></indexterm>
<termdef id="page-selector" term="Sayfa seçici">Bir <term>sayfa seçici</term> bildirimlerin hangi sayfalara uygulanacağını belirtir. BB2'de, sayfa seçiciler ilk sayfa, bütün sol sayfalar, bütün sağ sayfalar veya belli bir ismi olan bir sayfa için atanabilirler</termdef>.</p>

<p>Sayfa çerçevesinin boyutları <property>size</property> nitelikleri ile ayarlanır. Sayfa alanının boyutları sayfa çerçevesinden dış boşluk alanı çıkarılarak bulunur.</p>

<example>
<p>Aşağıdaki <code>@page</code> kuralı, 8.5 x 11 inçlik sayfa çerçevesi ile sayfa alanı arasında tüm kenarlarda 2 cm.lik dış boşluk oluşturur:</p>

<eg>@page { size: 8.5in 11in; margin: 2cm }</eg>
</example>

<p>Bir <code>@page</code> kuralı içindeki bir <property>marks</property> niteliği sayfa çerçevesi için kesme ve hizalama imlerini belirtir.</p>

<div3 id="page-margins">
<head>Sayfa dış boşlukları</head>

<p><titleref ref="margin-properties">Dış boşluk nitelikleri</titleref>
(<property>margin-top</property>, <property>margin-right</property>, <property>margin-bottom</property>, <property>margin-left</property> ve <property>margin</property>) <termref def="page-context">sayfa bağlamına</termref> uygulanır. Aşağıdaki şekilde yaprak, sayfa çerçevesi ve sayfa dış boşlukları arasındaki ilişki resmedilmiştir:</p>

<figure id="img-page-info">
<graphic source="images/page-info.png" alt="Yaprak, sayfa çerçevesi, dış boşluk alanı ve sayfa alanı arasındaki ilişkiler"/>
[<loc href="images/longdesc/page-info-desc.html" title="Yaprak, sayfa çerçevesi, dış boşluk alanı ve sayfa alanı arasındaki ilişkiler için geniş açıklama">Açıklama</loc>]
</figure>

<p>Sayfa alanının aşağı ve yukarısındaki çerçeve dış boşluklarının hesaplanmış değeri '0'dır.</p>

<p><termref def="page-context">Sayfa bağlamı</termref>nın yazıtipleriyle bir bağı yoktur, dolayısıyla <tt>em</tt> ve <tt>ex</tt> birimlerine izin verilmez. Dış boşluk niteliklerinin yüzdelik değerleri <titleref ref="page-box">sayfa çerçevesi</titleref>nin boyutlarına görelidir; sol ve sağ dış boşluklar için sayfa çerçevesinin genişliği ölçü alınırken, alt ve üst dış boşluklar için sayfa çerçevesinin yüksekliği ölçü alınır. BB2 nitelikleri ile ilgili diğer tüm birimlere izin verilmiştir.</p>

<p>Negatif dış boşluk değerleri (hem sayfa çerçevesi hem de elemanlar üzerinde) veya <titleref ref="absolute-positioning">mutlak konumlama</titleref> nedeniyle içerik sayfa çerçevesinin dışına taşabilir, fakat bu içerik kullanıcı arayüzü, yazıcı veya belki de bir kağıt kesici tarafından "kesilebilir".</p>
</div3>

<div3 id="page-size-prop">
<head>Sayfa boyutları: <property>size</property> niteliği</head>

<indexterm><primary><property>size</property></primary></indexterm>
<indexterm><primary>nitelikler</primary> <secondary><property>size</property></secondary></indexterm>
<propinfo>
  <propname>size</propname>
  <value><valueref>uzunluk</valueref>{1,2} | <literal>auto</literal> | <literal>portrait</literal> | <literal>landscape</literal> | <literal>inherit</literal></value>
  <initial><literal>auto</literal></initial>
  <applies-to><termref def="page-context">sayfa bağlamı</termref></applies-to>
  <inherited>Elverişsiz</inherited>
  <percentages/>
  <media><termref def="visual-media-group">görsel</termref>, <termref def="paged-media-group">sayfalı</termref></media>
</propinfo>

<p>Bu nitelik sayfa çerçevesinin boyutlarını ve baskı yönünü belirtir.</p>

<p>Bir sayfa çerçevesinin boyutları göreli (ölçeklenebilir) ya da mutlak (sabit boyut) olabilir. Göreli sayfa çerçeveleri, kullanıcı arayüzlerine belgeyi ölçekleme ve hedef boyutu en iyi şekilde kullanma imkanı verir.</p>

<p>Bir göreli sayfa çerçevesi <property>size</property> niteliğinin üç değeri ile oluşturulur (Değerlerin Türkçeleri köşeli ayraç içinde yanlarına yazılmıştır):</p>

<varlist>
<gitem>
<label><indexterm><primary><literal>auto</literal></primary></indexterm>
<literal>auto</literal></label>
<def><p>Sayfa çerçevesi hedef yaprağın yönüne ve boyutlarına ayarlanacaktır.</p></def>
</gitem>
<gitem>
<label><indexterm><primary><literal>landscape</literal></primary></indexterm>
<literal>landscape</literal> [yatay]</label>
<def><p>Hedefin yönüne bakmaksızın, sayfa çerçevesi hedefle aynı yapılırken, uzun kenarlar yatay basılır.</p></def>
</gitem>
<gitem>
<label><indexterm><primary><literal>portrait</literal></primary></indexterm>
<literal>portrait</literal> [düşey]</label>
<def><p>Hedefin yönüne bakmaksızın, sayfa çerçevesi hedefle aynı yapılırken, kısa kenarlar yatay basılır.</p></def>
</gitem>
</varlist>

<example>
<p>Bu örnekte, sayfa çerçevesinin dış kenarları hedefle hizalanacaktır. <property>margin</property> niteliğinin yüzdelik değerleri hedef boyuta göreli olarak belirtilmiştir. Yani, hedef yaprağın boyutları 21.0cm x 29.7cm (yani A4) ise dış boşluklar 2.10cm ve 2.97cm olur.</p>

<eg>@page {
  size: auto;   /* auto değeri zaten ilk değerdir */
  margin: 10%;
}</eg>
</example>

<p><property>size</property> niteliği için <valueref>uzunluk</valueref> değerleri bir mutlak sayfa çerçevesi oluşturur. Eğer sadece bir uzunluk değeri belirtilmişse, bu değeri sayfa çerçevesinin hem genişliğine hem de yüksekliğine uygular. Sayfa çerçevesi <titleref ref="initial-containing-block">ilk taşıyıcı blok</titleref> olduğundan <property>size</property> niteliğinde yüzdelik değerlere izin verilmez.</p>

<example>
<eg>@page {
  size: 8.5in 11in;  /* genişlik ve yükseklik */
}</eg>

<p>Bu örnekte sayfa çerçevesinin genişliği 8.5inç, yüksekliği ise 11 inç olup hedef yaprak boyutlarının 8.5"x11" veya daha büyük olması gerekir.</p>
</example>

<p>Kullanıcı arayüzleri sayfa çerçevesinin yaprağa aktarımının denetimini kullanıcılarına verebilir (mutlak sayfa çerçevesinin döndürülmesi gibi).</p>

<div4 id="page221">
<head>Hedef yaprağa sığmayan sayfa çerçevelerinin oluşturulması</head>

<p>Bir sayfa çerçevesi hedef yaprağa sığmadığı takdirde kullanıcı arayüzü şunlardan birini yapmayı seçebilir:</p>

<slist>
<sitem>Sayfa çerçevesini, böyle sığacaksa, 90° döndürür.</sitem>
<sitem>Hedefe sığacak şekilde sayfayı ölçeklendirir.</sitem>
</slist>

<p>Kullanıcı arayüzlerinin bu işlemleri yerine getirmeden önce kullanıcıya sorması gerekir.</p>
</div4>

<div4 id="page222">
<head>Sayfa çerçevesinin hedefte konumlanması</head>

<p>Sayfa çerçevesi hedef boyuttan küçük olduğu takdirde, kullanıcı arayüzü sayfa çerçevesini yaprağın herhangi bir yerine yerleştirmekte özgürdür. Bununla birlikte, çift taraflı basılan sayfaların hizalanması ve yaprağın kenarına yakın basılan bilgilerin ister istemez kaybından kaçınmak için sayfa çerçevesinin yaprağa ortalanması önerilir.</p>
</div4>
</div3>

<div3 id="crop-mark-prop">
<head>Kesme imleri: <property>marks</property> niteliği</head>

<indexterm><primary><property>marks</property></primary></indexterm>
<indexterm><primary>nitelikler</primary> <secondary><property>marks</property></secondary></indexterm>
<propinfo>
  <propname>marks</propname>
  <value>[ <literal>crop</literal> || <literal>cross</literal> ] | <literal>none</literal> | <literal>inherit</literal></value>
  <initial><literal>none</literal></initial>
  <applies-to><termref def="page-context">sayfa bağlamı</termref></applies-to>
  <inherited>Elverişsiz</inherited>
  <percentages/>
  <media><termref def="visual-media-group">görsel</termref>, <termref def="paged-media-group">sayfalı</termref></media>
</propinfo>

<p>Yüksek nitelikli baskıda, sayfa çerçevesine çoğunlukla imler eklenir. Bu nitelik kesme ve/veya hizalama imlerinin <titleref ref="page-box">sayfa çerçevesi</titleref> kenarlarının hemen dışında oluşturulup oluşturulmayacağını belirtir.</p>

<p><indexterm><primary>crop marks</primary></indexterm>
<indexterm><primary>cross marks</primary></indexterm>
<term>Kesme imleri</term> sayfanın nerede kesileceğini belirtir. <term>Hizalama imleri</term> ise yaprakları hizalamakta kullanılır.</p>

<p>İmler sadece mutlak sayfa çerçevelerinde bulunurlar. (<property>size</property> niteliğine bakınız). Göreli sayfa çerçevelerinde, sayfa çerçevesi hedefle hizalanır ve imler basılabilir alanın dışına konur.</p>

<p>İmlerin boyutları, biçemi ve konumu kullanıcı arayüzlerine bağlıdır.</p>
</div3>

<div3 id="page24">
<head>Sol, sağ ve ilk sayfalar</head>

<p>Belgeler çift taraflı basılırken, sol ve sağ sayfaların <titleref ref="page-box">sayfa çerçeveleri</titleref> farklı olacaktır. Bu, <termref def="page-context">sayfa bağlamında</termref> belirtilen BB sözde sınıfları ile sağlanabilir.</p>

<p><indexterm><primary><selector>:left</selector></primary></indexterm>
<indexterm><primary>sözde sınıflar</primary> <secondary><selector>:left</selector></secondary></indexterm>
<indexterm><primary><selector>:right</selector></primary></indexterm>
<indexterm><primary>sözde sınıflar</primary> <secondary><selector>:right</selector></secondary></indexterm>
<termdef id="seldef-left" term=":left sözde sınıfı">Kullanıcı arayüzleri tarafından tüm sayfalar özdevinimli olarak ya <code>:left</code></termdef> ya da <termdef id="seldef-right" term=":right sözde sınıfı"><code>:right</code> sözde sınıfı olarak sınıflandırılır</termdef>.</p>

<eg>@page :left {
  margin-left: 4cm;
  margin-right: 3cm;
}

@page :right {
  margin-left: 3cm;
  margin-right: 4cm;
}</eg>

<p>Eğer sol ve sağ sayfalar için ayrı bildirimler yapılmışsa, kullanıcı arayüzleri sayfa çerçevelerini sağ ve sol yapraklara aktarmıyor (yazıcı sadece tek taraflı baskı yapıyor olabilir) olsa bile bu bildirimleri dikkate almak zorundadır.</p>

<p><indexterm><primary><selector>:first</selector></primary></indexterm>
<indexterm><primary>sözde sınıflar</primary> <secondary><selector>:first</selector></secondary></indexterm>
<termdef id="seldef-first" term=":first sözde sınıfı">Biçembent yazarları bir belgenin ilk sayfası için <code>:first</code> sözde sınıfı ile ayrıca biçem belirtebilirler</termdef>:</p>

<eg>@page { margin: 2cm } /* Tüm dış boşluklar 2cm */

@page :first {        /* Baş sayfa için */
  margin-top: 10cm    /* Üst dış boşluk 10cm */
}</eg>

<p>Belgenin ilk sayfasının <selector>:left</selector> veya <selector>:right</selector> sınıfından olması, belgenin ana yazma yönüne bağlı olup bu belgenin kapsamında değildir. Bununla birlikte, bir sol veya sağ ilk sayfa oluşturmaya zorlamak için biçembent yazarları ilk üretilen sayfa çerçevesinden önce bir sayfa kesmesi yerleştirebilirler. (örn, HTML'de bu <htmltag>body</htmltag> elemanı için belirtilir.)</p>

<p><selector>:left</selector> veya <selector>:right </selector> <code>@page</code> kuralında belirtilmiş nitelikler, hiçbir sınıf belirtilmemiş <code>@page</code> kuralının niteliklerini geçersiz kılarlar. <selector>:first </selector> <code>@page</code> kuralında belirtilmiş nitelikler ise <selector>:left</selector> veya <selector>:right </selector> <code>@page</code> kuralında belirtilmiş nitelikleri geçersiz bırakırlar.</p>

<note><p><selector>:left</selector> veya <selector>:right </selector> sözde sınıflarının belirtilmiş olması belgeyi tek veya çift taraflı basılır yapmaz ve bu konu bu belgenin kapsamı dışındadır.</p></note>

<note><p>BB'nin sonraki aşamalarında başka sayfa sözde sınıfları eklenebilir.</p></note>
</div3>

<div3 id="page25">
<head>Sayfa çerçevesi dışındaki içerik</head>

<p>İçerik sayfa modeline göre biçimlenirken içeriğin bir kısmı sayfa çerçevesinin dışında kalabilir. Örneğin, <property>white-space</property> niteliğinin değeri olarak <literal>pre</literal> belirtilmiş bir eleman sayfa çerçevesinden daha geniş bir çerçeve üretebilir. Ayrıca, çerçeveler <titleref ref="absolute-positioning">mutlak olarak</titleref> konumlandıklarında münasebetsiz yerlerde bitebilirler. Örneğin resimler sayfa çerçevesinin kenarına veya 100.000 inç aşağısına yerleştirilmeye çalışılabilir.</p>

<p>Böyle elemanların gerektiği gibi biçimlenmesi için bir belirtim, bu belgenin kapsamı dışındadır. Yine de yazarlara ve kullanıcı arayüzlerine sayfa çerçevesinin dışında kalan içerikle ilgili olarak aşağıdaki genel ilkelere uymaları önerilir:</p>

<ulist>
<item><p>Sayfa çerçevesinin çok az dışında içeriğin yaprağın kenarına kadar basılmasına (sayfanın kanamasına) izin verilmelidir.</p></item>

<item><p>Elemanların konumlanmasına uyum sağlamak için kullanıcı arayüzlerinin büyük miktarda boş sayfa basmaktan kaçınması gerekir (100 boş sayfa istemezsiniz, herhalde). Yine de az miktarda boş sayfa üretmeye, <property>page-break-before</property> ve <property>page-break-after</property> niteliklerinin <literal>left</literal> ve <literal>right</literal> değerlerine uyum sağlamak için izin verilebilir.</p></item>

<item><p>Yazarların oluşmasını önlemek için elemanları alakasız yerlere konumlamaması gerekir. Bunun yerine şunlar yapılabilir:</p>

<slist>
<sitem>Çerçeve üretimini tamamen baskılamak için <property>display</property> niteliğine <literal>none</literal> değeri atanabilir.</sitem>
<sitem>Çerçeveyi görünmez yapmak için <property>visibility</property> niteliği kullanılabilir.</sitem>
</slist></item>

<item><p>Kullanıcı arayüzleri sayfa çerçevesi dışına konumlanan çerçeveleri çeşitli yollarla işleme sokabilir; onları iptal edebilir veya belge sonunda onlar için sayfa çerçeveleri oluşturabilirler.</p></item>
</ulist>
</div3>
</div2>

<div2 id="page-breaks">
<head>Sayfa kesmeleri</head>

<p>Aşağıdaki bölümlerde BB2'de sayfa biçimleme açıklanmaktadır. Beş nitelik kullanıcı arayüzlerinin nerelerde sayfa kesebileceğini veya kesmesi gerektiğini ve kalan içeriğin hangi sayfadan devam edeceğini belirler. Her sayfa kesmesi geçerli <titleref ref="page-box">sayfa çerçevesi</titleref>nin sonlandırır ve <termref def="doctree">belge ağacının</termref> kalan parçalarının yeni bir sayfa çerçevesine yerleştirilmeye devam edilmesine sebep olur.</p>

<div3 id="page-break-props">
<head>Önden/sondan/içinden sayfa kesme elemanları: <property>page-break-before</property>, <property>page-break-after</property>, <property>page-break-inside</property></head>

<p>Önden sayfa kesme:</p>
<indexterm><primary><property>page-break-before</property></primary></indexterm>
<indexterm><primary>nitelikler</primary> <secondary><property>page-break-before</property></secondary></indexterm>
<propinfo>
  <propname>page-break-before</propname>
  <value><literal>auto</literal> | <literal>always</literal> | <literal>avoid</literal> | <literal>left</literal> | <literal>right</literal> | <literal>inherit</literal></value>
  <initial><literal>auto</literal></initial>
  <applies-to><termref def="block-level">blok seviyesinden</termref> elemanlar</applies-to>
  <inherited>hayır</inherited>
  <percentages/>
  <media><termref def="visual-media-group">görsel</termref>, <termref def="paged-media-group">sayfalı</termref></media>
</propinfo>

<p>Sondan sayfa kesme:</p>
<indexterm><primary><property>page-break-after</property></primary></indexterm>
<indexterm><primary>nitelikler</primary> <secondary><property>page-break-after</property></secondary></indexterm>
<propinfo>
  <propname>page-break-after</propname>
  <value><literal>auto</literal> | <literal>always</literal> | <literal>avoid</literal> | <literal>left</literal> | <literal>right</literal> | <literal>inherit</literal></value>
  <initial><literal>auto</literal></initial>
  <applies-to><termref def="block-level">blok seviyesinden</termref> elemanlar</applies-to>
  <inherited>hayır</inherited>
  <percentages/>
  <media><termref def="visual-media-group">görsel</termref>, <termref def="paged-media-group">sayfalı</termref></media>
</propinfo>

<p>İçinden sayfa kesme:</p>
<indexterm><primary><property>page-break-inside</property></primary></indexterm>
<indexterm><primary>nitelikler</primary> <secondary><property>page-break-inside</property></secondary></indexterm>
<propinfo>
  <propname>page-break-inside</propname>
  <value><literal>auto</literal> | <literal>avoid</literal> | <literal>inherit</literal></value>
  <initial><literal>auto</literal></initial>
  <applies-to><termref def="block-level">blok seviyesinden</termref> elemanlar</applies-to>
  <inherited>evet</inherited>
  <percentages/>
  <media><termref def="visual-media-group">görsel</termref>, <termref def="paged-media-group">sayfalı</termref></media>
</propinfo>

<p>Bu niteliklerin değerlerinin anlamları (Değerlerin Türkçeleri köşeli ayraç içinde yanlarına yazılmıştır):</p>

<varlist>
<gitem>
<label><indexterm><primary><literal>auto</literal></primary></indexterm>
<literal>auto</literal></label>
<def><p>Üretilen çerçeveden önce/sonra/içinde bir sayfa kesmesini ne yasaklar ne de zorlar.</p></def>
</gitem>
<gitem>
<label><indexterm><primary><literal>always</literal></primary></indexterm>
<literal>always</literal> [daima]</label>
<def><p>Üretilen çerçeveden önce/sonra bir sayfa kesmesi daima yapılır.</p></def>
</gitem>
<gitem>
<label><indexterm><primary><literal>avoid</literal></primary></indexterm>
<literal>avoid</literal> [yasakla]</label>
<def><p>Üretilen çerçeveden önce/sonra/içinde bir sayfa kesmesini yasaklar.</p></def>
</gitem>
<gitem>
<label><indexterm><primary><literal>left</literal></primary></indexterm>
<literal>left</literal> [sol]</label>
<def><p>Sonraki sayfanın bir sol sayfa olarak biçimlenmesini sağlamak için üretilen çerçeveden önce/sonra bir veya iki sayfa kesmesi yapılır.</p></def>
</gitem>
<gitem>
<label><indexterm><primary><literal>right</literal></primary></indexterm>
<literal>right</literal> [sağ]</label>
<def><p>Sonraki sayfanın bir sağ sayfa olarak biçimlenmesini sağlamak için üretilen çerçeveden önce/sonra bir veya iki sayfa kesmesi yapılır.</p></def>
</gitem>
</varlist>

<p>Olası bir sayfa kesme yeri genellikle ebeveyn elemanın <property>page-break-inside</property>, önceki elemanın <property>page-break-after</property> ve sonraki elemanın <property>page-break-before</property> niteliğinin etkisi altındadır. Bu nitelikler <literal>auto</literal> dışında değerlere sahip oldukları takdirde, <literal>always</literal>, <literal>left</literal> ve <literal>right</literal> değerleri <literal>avoid</literal> değerine göre öncelikli olurlar. Bu niteliklerin nasıl bir sayfa kesmesini zorlayabileceği veya bastırabileceği ile ilgili kesin kurallar için <specref ref="allowed-page-breaks"/> bölümüne bakınız.</p>
</div3>

<div3 id="named-pages">
<head>İsimli sayfaların kullanımı: <property>page</property> niteliği</head>

<indexterm><primary><property>page</property></primary></indexterm>
<indexterm><primary>nitelikler</primary> <secondary><property>page</property></secondary></indexterm>
<propinfo>
  <propname>page</propname>
  <value><valueref>betimleyici</valueref> | <literal>auto</literal> | <literal>inherit</literal></value>
  <initial><literal>auto</literal></initial>
  <applies-to><termref def="block-level">blok seviyesinden</termref> elemanlar</applies-to>
  <inherited>evet</inherited>
  <percentages/>
  <media><termref def="visual-media-group">görsel</termref>, <termref def="paged-media-group">sayfalı</termref></media>
</propinfo>

<p><property>page</property> niteliği bir elemanın gösterilmesi için belli bir sayfa türü belirtmek için kullanılır.</p>

<example>
<p>Bu örnekte tüm tablolar sayfa yatay kullanılarak sağdaki sayfa konacaktır ("rotated" isimli sayfaya):</p>

<eg>@page rotated {size: landscape}
table {page: rotated; page-break-before: right}</eg>
</example>

<p><property>page</property> niteliği şöyle çalışır: satıriçi içerikli bir blok çerçevesi, önceki satıriçi içerikli bir blok çerçevesinden farklı bir <property>page</property> niteliğine sahipse, bunlar arasına bir veya iki sayfa kesmesi yerleştirilir ve kesmeden sonraki çerçeveler isimli türde bir sayfa çerçevesinde oluşturulur. Aşağıda <specref ref="forced"/> bölümüne bakınız.</p>

<example>
<p>Bu örnekte, iki tablo yatay sayfalarda (gerçekte sığıyorsa, aynı sayfalarda) oluşturulmakta ve <htmltag>div</htmltag> üzerinde atanmış olmasına rağmen hiçbirinde "narrow" sayfa türü kullanılmamaktadır:</p>

<eg>@page narrow {size: 9cm 18cm}
@page rotated {size: landscape}
div {page: narrow}
TABLE {page: rotated}</eg>

<p>belge:</p>
<eg><![CDATA[<div>
<TABLE>...</TABLE>
<TABLE>...</TABLE>
</div>]]></eg>
</example>
</div3>

<div3 id="break-inside">
<head>Elemanların içindeki kesmeler: <property>orphans</property>, <property>widows</property></head>
<p>Sayfada tutulacak satır sayısı:</p>
<indexterm><primary><property>orphans</property></primary></indexterm>
<indexterm><primary>nitelikler</primary> <secondary><property>orphans</property></secondary></indexterm>
<propinfo>
  <propname>orphans</propname>
  <value><valueref>tamsayı</valueref> | <literal>inherit</literal></value>
  <initial>2</initial>
  <applies-to><termref def="block-level">blok seviyesinden</termref> elemanlar</applies-to>
  <inherited>evet</inherited>
  <percentages/>
  <media><termref def="visual-media-group">görsel</termref>, <termref def="paged-media-group">sayfalı</termref></media>
</propinfo>
<p>Sonraki sayfaya aktarılacak satır sayısı:</p>
<indexterm><primary><property>widows</property></primary></indexterm>
<indexterm><primary>nitelikler</primary> <secondary><property>widows</property></secondary></indexterm>
<propinfo>
  <propname>widows</propname>
  <value><valueref>tamsayı</valueref> | <literal>inherit</literal></value>
  <initial>2</initial>
  <applies-to><termref def="block-level">blok seviyesinden</termref> elemanlar</applies-to>
  <inherited>evet</inherited>
  <percentages/>
  <media><termref def="visual-media-group">görsel</termref>, <termref def="paged-media-group">sayfalı</termref></media>
</propinfo>

<p><property>orphans</property> niteliği bir sayfanın dibinde kalması gereken olası en az sayıda satırdan oluşan bir paragraf belirtir. <property>widows</property> niteliği ise bir sayfanın tepesinde kalması gereken olası en az sayıda satırdan oluşan bir paragraf belirtir. Bunların sayfa kesmelerinde nasıl kullanıldıkları aşağıda örneklerle açıklanmıştır.</p>

<p>Paragraf biçimleme hakkında bilgi için lütfen <termref def="line-box">satır çerçevelerinin</termref> açıklandığı bölüme bakınız.</p>
</div3>

<div3 id="allowed-page-breaks">
<head>İzin verilen sayfa kesmeleri</head>

<p>Normal akışta sayfa kesmeleri aşağıdaki belirtilen yerlerde yer alabilir:</p>

<olist>
<item><p>Blok çerçeveleri arasında düşey dış boşluklarda. Bir sayfa kesmesi böyle bir yerde yer alırsa, ilgili <property>margin-top</property> ve <property>margin-bottom</property> niteliklerinin <titleref ref="computed-value">hesaplanmış değerleri</titleref> '0'a ayarlanır. </p></item>

<item><p>Bir <titleref ref="block-box">blok</titleref> çerçevesi içindeki <termref def="line-box">satır çerçeveleri</termref> arasında.</p></item>
</olist>

<p>Bu kesmeler aşağıdaki kurallara konu olurlar:</p>

<ulist>
<item><p><kw>Kural A:</kw> Dış boşluklarla bütünleşen çerçeveyi üreten öğelerin <property>page-break-after</property> ve <property>page-break-before</property> niteliklerinden en az birinin <literal>always</literal>, <literal>left</literal>, veya <literal>right</literal> değerinde olması veya tümünün <literal>auto</literal> değerinde olması durumunda (1)'de sayfa kesmeye izin verilir.</p></item>

<item><p><kw>Kural B:</kw> Bununla birlikte, bunların hepsi <literal>auto</literal> ise ve tüm elemanların en yakın ortak üstseli, değeri <literal>avoid</literal> olan bir <property>page-break-inside</property> niteliğine sahipse, burada kesmeye izin verilmez.</p></item>

<item><p><kw>Kural C:</kw> En yakın blok çerçevesinin başlangıcı ile olası kesme arasındaki <termref def="line-box">satır çerçevelerinin</termref> sayısı <property>orphans</property> değerine eşit veya büyükse ise veya olası
kesmeyle en yakın blok çerçevesinin sonu arasındaki satır çerçevelerinin
sayısı <property>widows</property> değerine eşit veya büyükse (2)'de kesmeye izin verilir.</p></item>

<item><p><kw>Kural D:</kw> Ek olarak, (2)'de kesmeye sadece <property>page-break-inside</property> niteliğinin değeri <literal>auto</literal> ise izin verilir.</p></item>
</ulist>

<p>Eğer yukarıdakiler sayfa çerçevelerinden taşan içeriği tutmak için yeterli kesme noktaları sağlamazsa, B ve D kuralları ek kesme noktalarını bulmak için kaldırılırlar.</p>

<p>Eğer hala yeterli sayfa kesmesi sağlanamıyorsa, daha fazla kesme noktası bulmak için A ve C kuralları da kaldırılır.</p>

<p>Sayfa kesmeleri <titleref ref="absolute-positioning">mutlak olarak</titleref> konumlanmış çerçevelerin içinde bulunamazlar.</p>
</div3>

<div3 id="forced">
<head>Zorlanmış sayfa kesmeleri</head>

<p>Bir sayfa kesmesinin (1)'de yer alması için, dış boşluklarla bütünleşen çerçeveyi üreten tüm elemanların <property>page-break-after</property> ve <property>page-break-before</property> nitelikleri arasından en az birinin <literal>always</literal>, <literal>left</literal> veya <literal>right</literal> değerini taşıması gerekir.</p>

<p>Bir sayfa kesmesinin (1)'de yer alması için, ayrıca, dış boşluğun üstündeki son ve altındaki ilk satır çerçevesinin <property>page</property> nitelikleri aynı değere sahip olmamalıdır.</p>
</div3>

<div3 id="page36">
<head>"En iyi" sayfa kesmeleri</head>

<p>BB2 izin verilen sayfa kesmelerinden hangisinin kullanılması gerektiğini tanımlamaz; BB2 kullanıcı arayüzlerinin olası kesme noktalarında kesme yapmasını/yapmamasını tümden yasaklamaz. Fakat kullanıcı arayüzlerinin aşağıdaki ampirik davranışları gözlemlemeleri önerilir (bazıları aykırı gelebilir):</p>

<slist>
<sitem>Mümkün olan en az sayıda kesme yapın.</sitem>
<sitem>Bütün sayfaların, hep aynı yükseklikte sayfa kesmeye zorlayan zorlanmış kesmelerle bitmemesini sağlayın.</sitem>
<sitem>Dış çizgisi olan bir çerçevenin içinde sayfa kesmekten kaçının.</sitem>
<sitem>Bir tablo içinde sayfa kesmekten kaçının.</sitem>
<sitem>Bir yüzen elemanın içinde sayfa kesmekten kaçının.</sitem>
</slist>

<example>
<p>Bir biçembendin <tt>orphans: 4</tt>, <tt>widows: 2</tt> bildirimlerini içerdiğini ve geçerli sayfanın altında 20 satırlık (<termref def="line-box">satır çerçevesi</termref>) yer kaldığını varsayalım:</p>

<ulist>
<item><p>Geçerli sayfanın sonunda 20 veya daha az satırdan oluşan bir paragraf varsa, paragraf geçerli sayfada kalmalıdır.</p></item>

<item><p>Eğer paragraf 21 veya 22 satırdan oluşuyorsa, paragrafın artanı <property>widows</property> kısıtı ile çelişmemelidir, yani sonraki sayfaya geçen kısım tam olarak iki satır içermelidir.</p></item>

<item><p>Eğer paragraf 23 satır veya daha fazlasını içeriyorsa, ilk parça 20 satır, ikinci parça ise kalan satırları içermelidir.</p></item>
</ulist>

<p>Şimdi <property>orphans</property> için '10', <property>widows</property> için '20' değerlerinin verilmiş olduğunu ve sayfanın altında 8 satırlık yer kaldığını varsayalım:</p>

<ulist>
<item><p>Geçerli sayfanın sonunda 8 veya daha az satırdan oluşan bir paragraf varsa, paragraf geçerli sayfada kalmalıdır.</p></item>

<item><p>Eğer paragraf 9 veya daha fazla sayıda satır içeriyorsa, (<property>orphans</property> kısıtı ile çelişeceği için) paragraf bölünmeden sonraki sayfaya aktarılmalıdır.</p></item>
</ulist>
</example>
</div3>
</div2>

<div2 id="page4">
<head>Sayfa bağlamında bütünleşme</head>

<p><termref def="page-context">Sayfa bağlamı</termref>ndaki bildirimler normal BB2 bildirimleri gibi <titleref ref="cascade">bütünleşime</titleref> itaat ederler.</p>

<example>
<p>Şu örneği ele alalım:</p>
<eg>@page {
  margin-left: 3cm;
}

@page :left {
  margin-left: 4cm;
}</eg>

<p>Sözde sınıf seçicilerin <titleref ref="cascading-order">daha yüksek özgülüğü</titleref> nedeniyle sol sayfaların sol dış boşluğu '4cm' ve diğer tüm sayfalarınki ise (yani sağ sayfaların) '3cm' olacaktır.</p>
</example>
</div2>
</div1>


