Liste ile ilgili CSS özellikleri
Bu makale, listeyle ilgili CSS özelliklerini açıklar.
list-style
özelliğini ve counter()
fonksiyonunu nasıl kullanacağınızı ve yazacağınızı öğrenebilirsiniz.
YouTube Video
Önizleme için HTML
css-list.html
1<!DOCTYPE html>
2<html lang="en">
3<head>
4 <meta charset="UTF-8">
5 <meta name="viewport" content="width=device-width, initial-scale=1.0">
6 <title>CSS Properties Example</title>
7 <link rel="stylesheet" href="css-base.css">
8 <link rel="stylesheet" href="css-list.css">
9</head>
10<body>
11 <!-- Header -->
12 <header>
13 <h1>List Related CSS Properties</h1>
14 </header>
15
16 <!-- Main content -->
17 <main>
18 <header>
19 <h2>List Related Properties</h2>
20 </header>
21 <article>
22 <h3>list-style</h3>
23 <section>
24 <header><h4>list-style-type: circle; list-style-position: inside;</h4></header>
25 <section class="sample-view">
26 <h5>Unordered List (ul)</h5>
27 <ul>
28 <li>Item 1</li>
29 <li>Item 2</li>
30 <li>Item 3</li>
31 </ul>
32 </section>
33 <header><h4>list-style: upper-roman outside</h4></header>
34 <section class="sample-view">
35 <h5>Ordered List (ol)</h5>
36 <ol>
37 <li>First</li>
38 <li>Second</li>
39 <li>Third</li>
40 </ol>
41 </section>
42 <header><h4>list-style-image: url('custom-bullet.png')</h4></header>
43 <section class="sample-view">
44 <h5>Custom Bullet List</h5>
45 <ul class="custom-list">
46 <li>Custom Item 1</li>
47 <li>Custom Item 2</li>
48 <li>Custom Item 3</li>
49 </ul>
50 </section>
51 </section>
52 </article>
53 <article>
54 <h3>counter()</h3>
55 <section>
56 <header><h4>CSS</h4></header>
57<pre class="sample">
58dl {
59 counter-reset: item;
60}
61
62dl dt::before {
63 counter-increment: item; /* Increment the counter */
64 content: counter(item) ". "; /* Display the counter */
65}
66</pre>
67 <header><h4>HTML</h4></header>
68<pre>
69<dl>
70 <dt>Term A</dt>
71 <dd>Explication for term A</dd>
72 <dt>Term B</dt>
73 <dd>Explication for term B</dd>
74 <dt>Term C</dt>
75 <dd>Explication for term C</dd>
76</dl>
77</pre>
78 <header><h4>HTML+CSS</h4></header>
79 <section class="sample-view">
80 <dl>
81 <dt>Term A</dt>
82 <dd>Explication for term A</dd>
83 <dt>Term B</dt>
84 <dd>Explication for term B</dd>
85 <dt>Term C</dt>
86 <dd>Explication for term C</dd>
87 </dl>
88 </section>
89 </section>
90 </article>
91 <article>
92 <h3>counters()</h3>
93 <section>
94 <header><h4>CSS</h4></header>
95<pre class="sample">
96ol {
97 list-style: none;
98 counter-reset: list-counter;
99}
100
101li {
102 counter-increment: list-counter;
103}
104
105li::before {
106 content: counters(list-counter, ".") " ";
107}
108</pre>
109 <header><h4>HTML</h4></header>
110<pre>
111<ol>
112 <li>Item A
113 <ol>
114 <li>Subitem A-1</li>
115 <li>Subitem A-2</li>
116 </ol>
117 </li>
118 <li>Item B
119 <ol>
120 <li>Subitem B-1</li>
121 </ol>
122 </li>
123</ol>
124</pre>
125 <header><h4>HTML+CSS</h4></header>
126 <section class="sample-view">
127 <ol>
128 <li>Item A
129 <ol>
130 <li>Subitem A-1</li>
131 <li>Subitem A-2</li>
132 </ol>
133 </li>
134 <li>Item B
135 <ol>
136 <li>Subitem B-1</li>
137 </ol>
138 </li>
139 </ol>
140 </section>
141 </section>
142 <section>
143 <header><h4>CSS</h4></header>
144<pre class="sample">
145article {
146 counter-reset: chapter;
147}
148h1.chapter {
149 counter-increment: chapter;
150 counter-reset: section;
151}
152h1.chapter::before {
153 content: counter(chapter) " ";
154}
155h2.section {
156 counter-increment: section;
157 counter-reset: sub-section;
158}
159h2.section::before {
160 content: counters(chapter, ".") "." counter(section) " ";
161}
162h3.sub-section {
163 counter-increment: sub-section;
164}
165h3.sub-section::before {
166 content: counters(chapter, ".") "." counter(section) "." counter(sub-section) " ";
167}
168</pre>
169 <header><h4>HTML</h4></header>
170<pre>
171<h1 class="chapter">Chapter A</h1>
172<h2 class="section">Section A-1</h2>
173<h3 class="sub-section">Subsection A-1-1</h3>
174<h3 class="sub-section">Subsection A-1-2</h3>
175
176<h2 class="section">Section A-2</h2>
177<h3 class="sub-section">Subsection A-2-1</h3>
178
179<h1 class="chapter">Chapter B</h1>
180<h2 class="section">Section B-1</h2>
181<h3 class="sub-section">Subsection B-1-1</h3>
182</pre>
183 <header><h4>HTML+CSS</h4></header>
184 <section class="sample-view">
185 <h1 class="chapter">Chapter A</h1>
186 <h2 class="section">Section A-1</h2>
187 <h3 class="sub-section">Subsection A-1-1</h3>
188 <h3 class="sub-section">Subsection A-1-2</h3>
189
190 <h2 class="section">Section A-2</h2>
191 <h3 class="sub-section">Subsection A-2-1</h3>
192
193 <h1 class="chapter">Chapter B</h1>
194 <h2 class="section">Section B-1</h2>
195 <h3 class="sub-section">Subsection B-1-1</h3>
196 </section>
197 </section>
198 </article>
199 </main>
200</body>
201</html>
Liste ile ilgili
list-style
özelliği
1ul {
2 list-style-type: circle; /* Empty circle bullets */
3 list-style-position: inside; /* Position bullets inside the content area */
4}
5
6ol {
7 /* Uppercase Roman numerals with bullets positioned outside */
8 list-style: upper-roman outside;
9}
10
11.custom-list {
12 list-style-image: url('custom-bullet.png'); /* Custom image bullets */
13}
list-style
özelliği, <ul>
ve <ol>
gibi HTML liste öğeleri için liste göstergelerinin (madde işaretleri veya numaralar) stilini belirlemek için kullanılan bir CSS özelliğidir. Bu özellik, listenin genel stilini kontrol etmenize olanak tanır ve liste görünümünü özelleştirmek için kullanışlıdır.
Bu örnekte, aşağıdaki stiller uygulanmıştır.
ul
: Boş daire madde işaretleri içeride görüntülenir.ol
: Büyük harfli Roma rakamlarıyla numaralandırılır ve rakamlar dışarıda görüntülenir.custom-list
sınıfı: Belirtilen görüntü madde işareti olarak görüntülenir.
list-style
yapısı
list-style
, aşağıdaki üç özellik için bir kısaltmadır:
list-style-type
: Liste öğeleri için gösterge türünü (madde işareti veya numara) belirtir.list-style-position
: Göstergeyin liste öğesinin içinde (inside
) mi yoksa dışında (outside
) mı yer alacağını belirtir.list-style-image
: Liste göstergesi olarak kullanılacak bir görüntüyü belirtir.
Temel Kullanım
1ul {
2 list-style: square inside url('path/to/image.png');
3}
Bu kod şu şekilde çalışır:
list-style-type: square
: Gösterge türünü kare bir şekle ayarlar.list-style-position: inside
: Gösterge, liste öğesinin içinde görüntülenir.list-style-image: url('path/to/image.png')
: Gösterge olarak bir görüntü kullanır.
Bireysel Özelliklerin Açıklaması
list-style-type
list-style-type
, liste için kullanılan işaretleyicinin türünü belirtir. Kullanılabilir stiller, listenin türüne bağlıdır.
Değer örneği
1ul {
2 /* Change list bullets to empty circles */
3 list-style-type: circle;
4}
5
6ol {
7 /* Number list items with lowercase letters (a, b, c, ...) */
8 list-style-type: lower-alpha;
9}
10
11ol.roman-list {
12 /* Number list items with uppercase roman numerals (I, II, III, ...) */
13 list-style-type: upper-roman;
14}
none
: Hiçbir işaretleyici gösterilmez.disc
(varsayılan): Küçük bir siyah daire.circle
: Küçük bir boş daire (halka).square
: Küçük bir kare.decimal
: 1, 2, 3, ... gibi numaralandırılmış bir liste.lower-alpha
: a, b, c, ... gibi küçük harfli alfabetik liste.upper-alpha
: A, B, C, ... gibi büyük harfli alfabetik liste.lower-roman
: i, ii, iii, ... gibi küçük harfli Romen rakamları.upper-roman
: I, II, III, ... gibi büyük harfli Romen rakamları.
list-style-position
1ul {
2 list-style-position: inside;
3}
list-style-position
özelliği, işaretleyicinin (madde işareti) liste elemanının dışında mı yoksa içinde mi yer alacağını belirtir. list-style-position
aşağıdaki değerlere sahip olabilir:.
outside
: İşaretleyiciler liste elemanının dışında yer alır ve eleman işaretleyiciden sonra başlar. Bu varsayılan değerdir.inside
: İşaretleyiciler liste elemanının içinde yer alır ve metnin bir parçası olarak görüntülenir.
list-style-image
1ul {
2 list-style-image: url('bullet.png'); /* Use an image as the list marker */
3}
list-style-image
özelliği, liste işaretleyicisi olarak bir resim kullanıldığında ayarlanır. Resim url()
kullanılarak belirtilir ve resim yüklenemezse, list-style-type
tarafından belirtilen işaretleyici görüntülenir.
list-style
kısayol özelliği
1ul {
2 list-style: square inside url('bullet.png');
3}
list-style
özelliği, list-style-type
, list-style-position
ve list-style-image
değerlerini tek seferde ayarlayabilen bir kısayol özelliğidir. Sıra esnektir ancak genellikle bu örnekteki gibi yazılır. Bu durumda, kare bir madde işareti liste elemanının içinde görüntülenir ve işaretleyici olarak bir resim kullanılır.
Özet
list-style
, listenin görünümünü (işaretleyici türü, konum, özel resim) tek seferde belirtmenizi sağlayan bir kısayol özelliğidir.list-style-type
,list-style-position
,list-style-image
özelliklerini tek tek ayarlamak da mümkündür.- Liste işaretçilerini düzen ve tasarıma göre esnek bir şekilde özelleştirebilirsiniz.
CSS Sayacı (counter()
)
1/* Reset the counter */
2dl {
3 counter-reset: item;
4}
5
6/* Apply the counter to list items */
7dl dt::before {
8 counter-increment: item; /* Increment the counter */
9 content: counter(item) ". "; /* Display the counter */
10}
CSS sayaçlarını, liste öğelerini veya belirli öğeleri otomatik olarak numaralandırmak için kullanabilirsiniz.
Sayaçların Oluşturulması ve Başlatılması
1/* Create and initialize the counter */
2ol {
3 counter-reset: section; /* Set the counter name to 'section' */
4}
counter-reset
özelliği ile bir sayaç oluşturabilir ve sıfırlayabilirsiniz.
Sayaçların Artırılması
1/* Increment the counter and display it */
2li::before {
3 counter-increment: section; /* Increment the counter by 1 */
4 content: counter(section) ". "; /* Display the counter value */
5}
counter-increment
özelliğiyle bir sayacı artırabilir ve counter
işleviyle sayaç değerini gösterebilirsiniz.
counters()
CSS'teki counters
işlevi, liste öğelerini numaralandırmak veya paragrafları sıralamak gibi özel sayaçları yönetmek için çok kullanışlıdır. Bu işlev, birden fazla sayaç değerini bir dizeyle birleştirip CSS içeriğinde gösterebilir. Burada, counters
işlevinin temel kullanımından pratik uygulama örneklerine kadar ayrıntılı olarak açıklayacağız.
counter
ve counters
Arasındaki Farklar
counter
ve counters
işlevleri sayaç değerlerini göstermek için kullanılır, ancak aralarında şu farklar vardır:.
counter
: Tek bir sayacın değerini alır.counters
: Belirtilen bir ayırıcıyla birden fazla sayaç değerini birleştirir ve gösterir.
Örneğin, iç içe liste öğelerinde sayaç kullanmak isterseniz, counters
işlevini kullanarak ebeveyn ve alt sayaçları birleştirerek gösterebilirsiniz.
counters
İşlevinin Sözdizimi
counters(<counter-name>, <string>);
counters
işlevi aşağıdaki sözdizimi ile kullanılır.
<counter-name>
: Kullanılacak sayacın adını belirtir.<string>
: Her sayaç arasına eklenecek dizeyi belirtir (genellikle.
veya-
gibi bir ayırıcı).
counters
İşlevinin Kullanım Örneği
Şimdi, counters
işlevinin bir kullanım örneğini inceleyelim.
1ol {
2 list-style: none;
3 counter-reset: list-counter;
4}
5
6li {
7 counter-increment: list-counter;
8}
9
10li::before {
11 content: counters(list-counter, ".") " ";
12}
- Bu örnekte, iki seviyeli iç içe bir liste için ebeveyn ve alt sayaçlar birleştirilmiştir.
list-counter
sayacı tanımlanıyor.counters
fonksiyonu, üst liste sayacını ve alt liste sayacını birleştirmek ve görüntülemek için kullanılır.
Çok seviyeli sayaçlar kullanarak gelişmiş örnek
counters
fonksiyonunu kullanarak, özel numaralandırma veya paragraf numaralandırma gibi çok seviyeli sayaçları esnek bir şekilde yönetebilirsiniz. Örneğin, bölümler ve alt bölümler içeren belgeler oluştururken faydalıdır.
1article {
2 counter-reset: chapter;
3}
4
5h1.chapter {
6 font-size: 1.2rem;
7 counter-increment: chapter;
8 counter-reset: section;
9}
10
11h1.chapter::before {
12 content: counter(chapter) " ";
13}
14
15h2.section {
16 font-size: 1.1rem;
17 counter-increment: section;
18 counter-reset: sub-section;
19}
20
21h2.section::before {
22 content: counters(chapter, ".") "." counter(section) " ";
23}
24
25h3.sub-section {
26 font-size: 1rem;
27 counter-increment: sub-section;
28}
29
30h3.sub-section::before {
31 content: counters(chapter, ".") "." counter(section) "." counter(sub-section) " ";
32}
Bu kodda, bölümler (h1
), alt bölümler (h2
) ve daha alt bölümler (h3
) için sayaçlar sıfırlanır ve her seviyeyi birleştirmek için counters
fonksiyonu kullanılır.
Özet
counters
fonksiyonu, birden fazla sayacı hiyerarşik bir şekilde özelleştirmek ve görüntülemek istediğinizde çok kullanışlıdır. CSS sayaçlarını kullanarak, liste ve başlık numaralandırmalarını özgürce özelleştirebilir ve web sayfalarına gelişmiş bir bilgi yapısı kazandırabilirsiniz.
Yukarıdaki makaleyi, YouTube kanalımızda Visual Studio Code'u kullanarak takip edebilirsiniz. Lütfen YouTube kanalını da kontrol edin.