--- title: '::first-letter (:first-letter)' slug: 'Web/CSS/::first-letter' translation_of: 'Web/CSS/::first-letter' ---
::first-letter
CSS sözde-elementi bir blok seviyeli elementin ilk satırındaki ilk harfe stil uygulamak için kullanılır, tabii o harften önce başka bir içerik gelmiyorsa (örneğin resimler ya da satır içi tablolar).
/* Bir <p> elementinin ilk harfini seçiyoruz. */ p::first-letter { font-size: 130%; }
Bir elementin ilk harfini belirlemek her zaman kolay değildir:
IJ
gibi. Bu durumlarda, kalıbı oluşturan iki harfin de ::first-letter
sözde elementi tarafından kancalanması gerekir. (Tarayıcı desteği bu konuda yetersizdir; aşağıdaki tarayıcı uyumluluk tablosuna göz atın.)::first-letter
oluşturulan bu içeriğin ilk harfini kancalayacaktır.CSS3 ile birlikte, sözde-sınıfları sözde-elementlerden ayırmak amacıyla iki noktalı ::first-letter
gösterimi tanıtıldı. Tarayıcılar, CSS2 ile tanıtılan, :first-letter
yazımını da kabul ediyorlar.
::first-letter
pseudo-elementi ile birlikte CSS niteliklerinin yalnızca küçük bir bölümü kullanılabilir:
float
niteliğine none
değeri atanmışsa) CSS nitelikleri{{csssyntax}}
Bu örneğimizde <h2>
elementinden hemen sonra gelen paragrafın ilk harfine basit bir drop-cap efekti uygulamak için ::first-letter
sözde elementini kullanacağız
<h2>My heading</h2> <p>Lorem ipsum dolor sit amet, consetetur sadipscing elitr, sed diam nonumy eirmod tempor invidunt ut labore et dolore magna aliquyam erat, sed diam voluptua. At vero eos et accusam et justo duo dolores et ea rebum. Stet clita kasd gubergren, no sea takimata sanctus est.</p> <p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat.</p>
p { width: 500px; line-height: 1.5; } h2 + p::first-letter { color: white; background-color: black; border-radius: 2px; box-shadow: 3px 3px 0 red; font-size: 250%; padding: 6px 3px; margin-right: 6px; float: left; }
{{ EmbedLiveSample('Simple_drop_cap', '100%', 350) }}
Aşağıdaki örnek, ::first-letter
sözde elementinin özel noktalama işaretleri ve Latin alfabesinde olmayan karakterler üzerindeki etkisini gösteriyor.
<p>Duis autem vel eum iriure dolor in hendrerit in vulputate velit esse molestie consequat.</p> <p>-The beginning of a special punctuation mark.</p> <p>_The beginning of a special punctuation mark.</p> <p>"The beginning of a special punctuation mark.</p> <p>'The beginning of a special punctuation mark.</p> <p>*The beginning of a special punctuation mark.</p> <p>#The beginning of a special punctuation mark.</p> <p>「特殊的汉字标点符号开头。</p> <p>《特殊的汉字标点符号开头。</p> <p>“特殊的汉字标点符号开头。</p>
p::first-letter { color: red; font-size: 150%; }
{{ EmbedLiveSample('Effect_on_special_punctuation_and_non-Latin_characters', '100%', 350) }}
Specification | Status | Comment |
---|---|---|
{{ SpecName('CSS4 Pseudo-Elements', '#first-letter-pseudo', '::first-letter')}} | {{ Spec2('CSS4 Pseudo-Elements')}} | Generalizes allowed properties to typesetting, text decoration, inline layout properties, {{ cssxref("opacity") }}, and {{ cssxref("box-shadow") }}. |
{{ SpecName('CSS3 Text Decoration', '#text-shadow-property', 'text-shadow with ::first-letter')}} | {{ Spec2('CSS3 Text Decoration')}} | Allows the use of {{cssxref("text-shadow")}} with ::first-letter . |
{{ SpecName('CSS3 Selectors', '#first-letter', '::first-letter') }} | {{ Spec2('CSS3 Selectors') }} | Introduction of the two-colon syntax. Definition of edge-case behavior, such as in list items or with specific languages (e.g., the Dutch digraph IJ ). |
{{ SpecName('CSS2.1', 'selector.html#first-letter', '::first-letter') }} | {{ Spec2('CSS2.1') }} | No change. |
{{ SpecName('CSS1', '#the-first-letter-pseudo-element', '::first-letter') }} | {{ Spec2('CSS1') }} | Initial definition, using the one-colon syntax. |
{{Compat("css.selectors.first-letter")}}