๊ฐœ๋ฐœ ๐Ÿพ/JavaScript

์ž๋™์œผ๋กœ ์ˆœ์„œ๋Œ€๋กœ ์ˆซ์ž๊ฐ’ ๋„ฃ์–ด์ฃผ๊ธฐ - CSS counter

JOTOKKI 2019. 11. 12. 14:15
728x90

 

javascript๋‚˜ jquery๋ฅผ ์‚ฌ์šฉํ•˜์ง€ ์•Š๊ณ  CSS ๋งŒ์œผ๋กœ๋„ ์ˆœ์„œ๋Œ€๋กœ ๊ฐ’์„ ๋„ฃ์–ด์ค„์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

counter-reset ์†์„ฑ์œผ๋กœ ์ ์šฉํ•  counter์˜ ์ด๋ฆ„์„ ์ง€์ •ํ•ด ์ค€ํ›„ 

counter-increment๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ž๋™์œผ๋กœ ์ฆ๊ฐ€ํ•˜์—ฌ ์ˆซ์ž๊ฐ€ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. 

์ฃผ์˜ํ•  ์ ์€ counter์˜ ์ด๋ฆ„์œผ๋กœ "none", "inherit" ๋“ฑ์˜ ๊ธฐ๋ณธ์ ์œผ๋กœ ์‚ฌ์šฉ๋˜๋Š” ์†์„ฑ๊ฐ’์„ ์‚ฌ์šฉํ•˜๋ฉด ์•ˆ๋ฉ๋‹ˆ๋‹ค.

 

 

1. ์ผ๋ฐ˜ ์นด์šดํ„ฐ

- HTML

1
2
3
4
5
6
7
8
<div class="wrap">
    <ul class="list">
        <li class="item">Javascript</li>
        <li class="item">CSS</li>
        <li class="item">JQuery</li>
    </ul>
</div>
 
cs

- CSS

๋ฐ˜๋ณต๋˜๋Š” ์š”์†Œ์˜ ๋ถ€๋ชจ์— counter-reset์„ ๊ฑธ์–ด์ฃผ๊ณ 

๋ฐ˜๋ณต๋˜๋Š” ์š”์†Œ์— counter-increment๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ž๋™์œผ๋กœ ๊ฐ’์ด ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  content ์•ˆ์— counter(counter์ด๋ฆ„) ๋„ฃ์–ด์ฃผ๋ฉด 1 -, 2 - , 3 - ์ด๋ ‡๊ฒŒ ์ž๋™์œผ๋กœ ์ฆ๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. 

1
2
3
4
5
6
7
8
9
10
11
12
.list {
    counter-reset : numbering;
    list-style-type:none;
 
}
 
.list .item:before{
    counter-increment : numbering;
    content : counter(numbering);
    margin-right:10px;
}
 
cs

 

- ๊ฒฐ๊ณผ

๊ฒฐ๊ณผํ™”๋ฉด

2. ์ค‘์ฒฉ ์นด์šดํ„ฐ

- HTML

์ด๋ฒˆ์—” ๋ชฉ๋ก ์•ˆ์— ์†Œ๋ชฉ๋ก์ด ์žˆ๋‹ค๊ณ  ํ•ด๋ด…์‹œ๋‹ค. 

1 ์— ๋Œ€ํ•œ ๋ชฉ๋ก ๋ฐ‘์— 1-1, 1-2 ์ด๋ ‡๊ฒŒ ์ฆ๊ฐ€ํ•ด์•ผํ•ฉ๋‹ˆ๋‹ค. 

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
<div class="wrap">
    <ul class="list">
        <li class="item">
            Javascript
            <ul class="list">
                <li class="item">Javascript is fun</li>
                <li class="item">Javascript is not easy</li>
            </ul>
        </li>
        <li class="item">CSS</li>
        <li class="item">
            JQuery
            <ul class="list">
                <li class="item">JQuery is fun</li>
                <li class="item">JQuery is easy</li>
            </ul>
        </li>
    </ul>
</div>
cs

- CSS

ํฐ๋ชฉ๋ก, ์ž‘์€๋ชฉ๋ก ๋ชจ๋‘ .list ์— ๊ฐ์‹ธ์žˆ๊ธฐ๋•Œ๋ฌธ์— ํ•œ๋ฒˆ๋งŒ  counter-reset์„ ์ง€์ •ํ•ด์ฃผ๋ฉด,

.list ์š”์†Œ๋งˆ๋‹ค numbering์ด๋ผ๋Š” ์ธ์Šคํ„ด์Šค๋ฅผ ์ƒˆ๋กœ ์ƒ์„ฑํ•ด ์ค๋‹ˆ๋‹ค.

์ค‘๋ณต์œผ๋กœ ์ง€์ •ํ•  ํ•„์š”๊ฐ€ ์—†๋‹ค๋Š” ์†Œ๋ฆฌ์ž…๋‹ˆ๋‹ค. 

 

๊ทธ๋ฆฌ๊ณ  counters(name, string) ๋‘๊ฐ€์ง€ ๊ฐ’์„ ์ „๋‹ฌํ•˜์—ฌ ํ‘œ์‹œํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. 

๋งŒ์•ฝ counter(numbering, "."); ๋ผ๊ณ  ์ง€์ •ํ•œ๋‹ค๋ฉด 1.1, 1.2, 1.3 ์ด๋Ÿฐ์‹์œผ๋กœ ์ƒ์„ฑ๋˜๊ฒ ๋„ค์š”.

์ €๋Š” 1-1, 1-2, 1-3 ์ด๋Ÿฐ์‹์œผ๋กœ ์ถœ๋ ฅํ•˜๊ณ ์ž ํ•ฉ๋‹ˆ๋‹ค. 

1
2
3
4
5
6
7
8
9
10
.list {
    counter-reset : numbering;
    list-style-type:none;
}
 
.list .item:before{
    counter-increment : numbering;
    content: counters(numbering, "-");
    margin-right:10px;
}
cs

- ๊ฒฐ๊ณผ

์›ํ•˜๋Š”๋Œ€๋กœ ์ž˜ ์ถœ๋ ฅ๋˜๋Š”๊ฒƒ์„ ๋ณผ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฐ๊ณผํ™”๋ฉด

ํ•ด๋‹น ๊ธฐ๋Šฅ์€ IE8 ๊นŒ์ง€ ์ง€์›์ด ๋˜๋Š” ๋‹ค์†Œ ์•ˆ์ •์ ์ธ ๋ฐฉ์‹์ž…๋‹ˆ๋‹ค. 

์˜›๋‚ ์—๋Š” ์ด๋Ÿฐ ๊ธฐ๋Šฅ์„ ๋ชฐ๋ผ์„œ ์Šคํฌ๋ฆฝํŠธ๋กœ ๊ท€์ฐฎ๊ฒŒ ์งฐ์—ˆ๋Š”๋ฐ.. 

CSS๋„ ๊พธ์ค€ํžˆ ํŒŒ๋‹ค๋ณด๋ฉด ์ด๋ ‡๊ฒŒ ๋ชจ๋ฅด๋Š”๊ฒƒ๋“ค์ด ์ž๊พธ ๋‚˜์˜ต๋‹ˆ๋‹ค ใ…Žใ…Ž

๋ฐ˜์‘ํ˜•