FE/HTML,CSS

[css] reset css | Vendor-Prefix | Selector์šฐ์„ ์ˆœ์œ„

mandelina 2022. 4. 6. 17:11

๐Ÿš€ CSS

 

1. RESET CSS

reset css ๋ž€?   ๋ธŒ๋ผ์šฐ์ €์˜ ๋ชจ๋“  ๊ธฐ๋ณธ์ ์ธ ์Šคํƒ€์ผ ์†์„ฑ๋“ค์„ ์™„์ „ํžˆ ์ดˆ๊ธฐํ™” ์‹œํ‚ค๋Š” ๊ฒƒ .

 

Q. ์™œ reset ํ•ด์ฃผ์–ด์•ผํ• ๊นŒ?

- ๊ฐ๊ฐ ๋ธŒ๋ผ์šฐ์ €๊ฐ€ ์ œ๊ณตํ•˜๋Š” ์š”์†Œ์˜ ์Šคํƒ€์ผ์ด ๋ชจ๋‘ ๋‹ค๋ฅด๋‹ค!

- ํ•˜์ง€๋งŒ ๊ฐœ๋ฐœ์ž๊ฐ€ ๊ตฌํ˜„ํ•ด์•ผํ•˜๋Š” ๋””์ž์ธ์€ ๋™์ผํ•ด์•ผํ•œ๋‹ค!

- ๊ทธ๋ ‡๊ธฐ์— ์ดˆ๊ธฐํ™”๋ฅผ ํ•ด์ค€๋‹ค!

 

 

๐Ÿชฑ ์—๋ฆญ๋งˆ์ด์–ด Reset CSS

- ์˜ค๋ž˜์ „๋ถ€ํ„ฐ ๋„๋ฆฌ ์‚ฌ์šฉ๋˜๋˜ ๋ฐฉ๋ฒ•

- 2011๋…„๋„ ์ดํ›„ ์—…๋ฐ์ดํŠธ x

 

/* reset.css */

html, body, div, span, applet, object, iframe,
h1, h2, h3, h4, h5, h6, p, blockquote, pre,
a, abbr, acronym, address, big, cite, code,
del, dfn, em, img, ins, kbd, q, s, samp,
small, strike, strong, sub, sup, tt, var,
b, u, i, center,
dl, dt, dd, ol, ul, li,
fieldset, form, label, legend,
table, caption, tbody, tfoot, thead, tr, th, td,
article, aside, canvas, details, embed, 
figure, figcaption, footer, header, hgroup, 
menu, nav, output, ruby, section, summary,
time, mark, audio, video {
	margin: 0;
	padding: 0;
	border: 0;
	font-size: 100%;
	font: inherit;
	vertical-align: baseline;
}
/* HTML5 display-role reset for older browsers */
article, aside, details, figcaption, figure, 
footer, header, hgroup, menu, nav, section {
	display: block;
}
body {
	line-height: 1;
}
ol, ul {
	list-style: none;
}
blockquote, q {
	quotes: none;
}
blockquote:before, blockquote:after,
q:before, q:after {
	content: '';
	content: none;
}
table {
	border-collapse: collapse;
	border-spacing: 0;
}

 

๊ทธ์™ธ

nomalize.css : (https://necolas.github.io/normalize.css/)

CSS Remedy : (https://github.com/jensimmons/cssremedy)

 

 

 


2. ๋ฒค๋”ํ”„๋ฆฌํ”ฝ์Šค(Vendor-Prefix)

 

- ๋ฒค๋” (๋ธŒ๋ผ์šฐ์ € ์ œ์กฐ์‚ฌ) ์™€ ํ”„๋ฆฌํ”ฝ์Šค (์ ‘๋‘์–ด)์˜ ํ•ฉ์„ฑ์–ด

- ๋น„ํ‘œ์ค€์ด๊ฑฐ๋‚˜ ์‹คํ—˜์ ์ธ CSS์†์„ฑ์„ ํŠน์ • ๋ธŒ๋ผ์šฐ์ €์—์„œ ์‹คํ–‰ ํ•  ์ˆ˜ ์žˆ๋„๋ก CSS์†์„ฑ ์•ž์— ๋ธŒ๋ผ์šฐ์ € ์ œ์กฐ์‚ฌ ๋งŒ์˜

   ์ ‘๋‘์–ด๋ฅผ ๋ถ™์ด๋Š” ๋ฌธ๋ฒ•์ด๋‹ค.

 

 

-webkit-transition: all 4s ease;  // 1
-moz-transition: all 4s ease; // 2
-ms-transition: all 4s ease; // 3 
-o-transition: all 4s ease; // 4
transition: all 4s ease; // 5

 

1. ํฌ๋กฌ, ์•ˆ๋“œ๋กœ์ด๋“œ, ์‚ฌํŒŒ๋ฆฌ, ios ๊ธฐ๋ฐ˜ ํŒŒ์ด์–ดํญ์Šค, ์˜คํŽ˜๋ผ ๋“ฑ ์›นํ‚ท ๊ธฐ๋ฐ˜ ๋ธŒ๋ผ์šฐ์ €

2. ํŒŒ์ด์–ดํญ์Šค ๋ธŒ๋ผ์šฐ์ €

3. ๋งˆ์ดํฌ๋กœ์†Œํ”„ํŠธ ์ธํ„ฐ๋„ท ์ต์Šคํ”Œ๋กœ๋Ÿฌ, ๋ ˆ๊ฑฐ์‹œ ์—ฃ์ง€

4. ๋ ˆ๊ฑฐ์‹œ ์˜คํŽ˜๋ผ ๋ธŒ๋ผ์šฐ์ €

 


3. Selector์™€ ์šฐ์„ ์ˆœ์œ„

 

๐Ÿซ€ ์„ ํƒ์ž ์ •๋ฆฌ 

https://mandelina-code.tistory.com/16?category=1020515

 

 

* class ๋Š” ์ค‘๋ณต์ด ๊ฐ€๋Šฅํ•˜์ง€๋งŒ id๋Š” ์ค‘๋ณต์ด ๋ถˆ๊ฐ€๋Šฅํ•˜๋‹ค!!

 

<!DOCTYPE html>
<html>
<head>
    <meta charset="UTF-8">
    <title>Document</title>
    <link rel="stylesheet" href="a.css">
    <style>
    .one{
        color: red;    
    }
    
    .two{
        font-size: 20px;
    }

    </style>
</head>
<body>
    <h1 class="one two">hello</h1>
</body>
</html>

- ์ด๋Ÿฐ์‹์œผ๋กœ h1์€ class๋กœ one๊ณผ two๋ฅผ ๊ฐ€์ง„๋‹ค.

 

 

๐Ÿซ€ ์„ ํƒ์ž ์šฐ์„ ์ˆœ์œ„

 

1. ํ›„์ž ์šฐ์„ ์˜ ์›์น™

- ๋™์ผํ•œ ์„ ํƒ์ž๊ฐ€ ์—ฐ์†์œผ๋กœ ์“ฐ์ด๋ฉด ํ›„์ž๊ฐ€ ์šฐ์„ ํ•œ๋‹ค.

 

2. ๊ตฌ์ฒด์„ฑ์˜ ์›์น™

- ๋” ๊ตฌ์ฒด์ ์œผ๋กœ ์ž‘์„ฑ๋˜์—ˆ๋‹ค๋ฉด ์šฐ์„ ํ•œ๋‹ค.

 

์—ฌ๊ธฐ์„œ ๋” ๊ตฌ์ฒด์ ์ด๋ผ๋Š”๊ฒƒ์€ ๋ฌด์—‡์ผ๊นŒ ? ์ด ์• ๋งคํ•œ ์ƒํ™ฉ์„ ๊ฐ€์ถฉ์น˜๋กœ ์„ค๋ช… ํ•  ์ˆ˜ ์žˆ๋‹ค.

 

- ๊ฐ€์ค‘์น˜ ์ˆœ์œ„ : id > class > ํƒ€์ž…

 

- ์•„๋ž˜ ์‚ฌ์ง„์„ ์ฐธ๊ณ ํ•˜์—ฌ ์„ ํƒ์ž๊ฐ€ ์—ฌ๋Ÿฌ๊ฐœ ์žˆ์–ด๋„ ์ง๊ด€์ ์œผ๋กœ ๊ฐ€์ค‘์น˜๋ฅผ ๋”ฐ์งˆ ์ˆ˜ ์žˆ๋‹ค

 

- ๋นจ๊ฐ„์ƒ‰ ํ”Œ๋ž‘ํฌํ†ค : ํƒ€์ž…์„ ํƒ์ž

- ํŒŒ๋ž€ ์ƒ์„  : class ์„ ํƒ์ž

- ์ƒ์–ด : id ์„ ํƒ์ž

- inline-style : ๋ฐฐ

- !important : ๊ทธ๋ƒฅ ์ œ์ผ ์Ž” ...

 

์ง๊ด€์ ์œผ๋กœ ์ƒ์–ด2 ํ”Œ๋ž‘ํฌํ†ค1 vs ์ƒ์„  3์ด๋ฉด -> ์ƒ์–ด๊ฐ€ ์ด๊ธด๋‹ค!

 

(๋‹ค๋ฅธ ์˜ˆ์‹œ๋กœ ํƒ€์ž…,class,id๋ฅผ ๊ฐ๊ฐ ๋™,์€,๊ธˆ๋ฉ”๋‹ฌ๋กœ ์ƒ๊ฐํ•ด๋„ ์‰ฝ๋‹ค.)

 

OR

 

๊ฐ€์ค‘์น˜ ์ ์ˆ˜ํ‘œ๋ฅผ ํ™œ์šฉํ•  ์ˆ˜๋„ ์žˆ๋‹ค.

 

inline - style 1000์ 
id  100์ 
class , ๊ฐ€์ƒ , ์†์„ฑ 10์ 
ํƒ€์ž… , ๊ฐ€์ƒ์š”์†Œ 1์ 
์ „์ฒด (*) 0์ 

 


Q . ์ด๋Ÿฐ๊ฒฝ์šฐ๋Š”? 

 

<head>
    <style>
        .h1 {
            color: red;
        }

        html body div div div div div div div div div h1 {
            background: #000;
            color: blue;
        }
    </style>
</head>
<body>
    <div>
        <div>
            <div>
                <div>
                    <div>
                        <div>
                            <div>
                                <div>
                                    <div>
                                        <h1 class="h1">hello</h1>
                                    </div>
                                </div>
                            </div>
                        </div>
                    </div>
                </div>
            </div>
        </div>
    </div>
</body>

 

ํƒœ๊ทธ 13์  VS ํด๋ž˜์Šค 10์  -> ํƒœ๊ทธ๊ฐ€ ์ด๊ธด๋‹ค ? (X)

 

- ์•„๋ฌด๋ฆฌ ์ ์ˆ˜๋ฅผ ์–ป์–ด๋„ ํด๋ž˜์Šค๊ฐ€ ๊ฐ€์ง€๋Š” 10์ ์„ ๋„˜๊ธฐ์ง€ ๋ชปํ•œ๋‹ค! 

   (๋™๋ฉ”๋‹ฌ 13๊ฐœ๋ฅผ ๋ฐ›์•„๋„ ์€๋ฉ”๋‹ฌ 1๊ฐœ๊ฐ€ ์ด๊ธด๋‹ค . . )

 

 

3 . ์ค‘์š”์„ฑ์˜ ์›์น™

 

   ! important

: ์ ˆ๋Œ€์ ์ธ ์šฐ์„ ์ˆœ์œ„ . ๊ฐ€์ค‘์น˜๋ฅผ ๋ฌด์‹œํ•œ๋‹ค .

 

(๋งŽ์€ ๋Œ€๊ทœ๋ชจ ์›น์‚ฌ์ดํŠธ ๋ฐ ์•ฑ์—์„œ css์œผ ๋ฌธ์ œ๋Š” ์šฐ์„ ์ˆœ์œ„๋ฅผ ์œ ์ง€ํ•˜๋Š”๊ฒƒ์ด ์–ด๋ ค์›Œ ์–ด๋Š์‹œ์ ์—์„œ !important๋ฅผ ํ”ผํ•˜๊ธฐ ์–ด๋ ต๋‹ค๊ณ ํ•œ๋‹ค. ๋˜ํ•œ ์Šคํƒ€์ผ์„ ์„ฏ๋ถˆ๋ฆฌ ์ œ๊ฑฐํ•˜๊ฑฐ๋‚˜ ์ˆ˜์ •ํ•˜๋ฉด ๋‹ค๋ฅธ ๊ตฌ์„ฑ์š”์†Œ๊ฐ€ ์†์ƒ๋  ์ˆ˜ ์žˆ์–ด ์‚ฌ์šฉํ•œ๋‹ค.)

 

 


 

Box Model (inline vs block) & ๋งˆ์ง„ ๊ฒน์นจ ํ˜„์ƒ (margin collapsing)

ํฌ์ŠคํŒ… :  https://mandelina-code.tistory.com/31

 


 

๐ŸŒˆ๊ทธ๋ฐ–์—

 

- ์ฝ”๋”ฉํ‘œ์ค€ (๋ณ€์ˆ˜ ๋ช…๋ช…) 

 

ํŒŒ์ด์ฌ : ์Šค๋„ค์ดํฌ ํ‘œ๊ธฐ๋ฒ•

js : ์นด๋ฉœ ํ‘œ๊ธฐ๋ฒ•

html, css : ๋‹ค์–‘  (๋”๋ธ”ํด๋ฆญ์‹œ ๋“œ๋ž˜๊ทธ ๋˜๋Š” ์˜์—ญ์„ ๊ธฐ์ค€์œผ๋กœ ์ฝ”๋”ฉ์„ ๋”์šฑ ํšจ์œจ์ ์œผ๋กœ ํ•  ์ˆ˜ ์žˆ๋‹ค.)

 

- reset css๋Š” ๋ณดํ†ต ํšŒ์‚ฌ์—์„œ ์‚ฌ์šฉํ•˜๋Š” css์ฝ”๋“œ๊ฐ€ ์ •ํ•ด์ ธ์žˆ๋‹ค.

 

- backgroud-color๋Š” border ๋‚ด๋ถ€์˜ ์˜์—ญ์— ์ƒ‰์ด ๋ณ€ํ•œ๋‹ค . margin๊นŒ์ง€ ์ฃผ๊ณ ์‹ถ๋‹ค๋ฉด ๋ถ€๋ชจ์š”์†Œ์— ์ƒ‰์„ ์ž…ํ˜€์•ผํ•œ๋‹ค.

 

- html๊ณผ body์˜ ์˜์—ญ์— ๋Œ€ํ•ด ๊ตฌ๋ถ„ํ•˜์ž!

 

์ฐธ๊ณ  ์˜์ƒ (๋น”์บ ํ”„ css): https://www.youtube.com/watch?v=H7teKNwV-Bk&t=1s

 

 

 

 

๐Ÿ”ฅ ํšŒ๊ณ 

css๋ฅผ ๋ณธ๊ฒฉ์ ์œผ๋กœ ๋“ค์–ด๊ฐ”๋‹ค . ์‚ฌ์‹ค css๋ฅผ ํ•œ๋ฒˆ๋„ ๊ฐ์žก๊ณ  ์ œ๋Œ€๋กœ ๊ณต๋ถ€ํ•ด๋ณธ์ ์ด ์—†์–ด์„œ html์— ๋น„ํ•ด ์ƒˆ๋กญ๊ฒŒ ์•Œ๊ฒŒ ๋œ ๋ถ€๋ถ„์ด ๋งŽ์•˜๋‹ค. (๊ทธ๋ž˜์„œ ์ง‘์ค‘๋„ ๋” ์ž˜ ๋œ ๋Š๋‚Œ?)

 

๋งˆ์ง„๋ณ‘ํ•ฉํ˜„์ƒ๊ณผ inline,block ์— ๊ด€๋ จํ•œ ํฌ์ŠคํŒ…์€ ๋”ฐ๋กœ ๋‹ค๋ฃจ์—ˆ๋‹ค. ์ค‘์š”ํ•ด์„œ ์•ž์œผ๋กœ ๊ณ„์† ํฌ์ŠคํŒ…์„ ๋ณผ ๊ฒƒ ๊ฐ™๊ธฐ ๋•Œ๋ฌธ์— ..

 

๊ทธ๋ฐ–์— ํ˜ธ์ค€๋‹˜๊ป˜์„œ ๊ฐœ๋ฐœ์ž๋“ค์ด ์‚ฌ์šฉํ•˜๋Š” ๋ชจ๋‹ˆํ„ฐ , ๋งˆ์šฐ์Šค , ํ‚ค๋ณด๋“œ๋ฅผ ๋ง์”€ํ•ด์ฃผ์‹œ๊ธฐ๋„ ํ–ˆ๋‹ค. 

๋ถ€ํ’ˆ ์š•์‹ฌ์€ ๋„ˆ๋ฌด ๋งŽ์€๋ฐ . . . ํ……์žฅ์ด๊ธฐ์— ์ด์ •๋„ ์ŠคํŽ™์„ ๋งŒ์กฑํ•˜๋ฉฐ  . . . ๐Ÿ˜‚ 

์ทจ์—…ํ•˜๋ฉด ๊ผญ ์ข‹์€๊ฑฐ ์‚ฌ์•ผ์ง€ . . . .

'FE > HTML,CSS' ์นดํ…Œ๊ณ ๋ฆฌ์˜ ๋‹ค๋ฅธ ๊ธ€

[css] ๋‹จ์œ„ | background | font  (0) 2022.04.07
[CSS ] ๋งˆ์ง„ ๊ฒน์นจ ํ˜„์ƒ | inline | block  (2) 2022.04.06
[HTML] table | inline vs block  (0) 2022.04.05
[HTML] formํƒœ๊ทธ  (0) 2022.04.05
[HTML] Text-level semantics  (0) 2022.03.30