๐Ÿ“Œ TIL) CSS์˜ Selectors

Solmiiยท2020๋…„ 4์›” 18์ผ
0

CSS

๋ชฉ๋ก ๋ณด๊ธฐ
5/7
post-thumbnail

๐ŸŠ๐Ÿปโ€โ™‚๏ธ CSS๋ž€?

  • Cascading(ํญํฌ,ํ๋ฅด๋Š”,์—ฐ์†๋œ) Style Sheet
    =>Author style์—์„œ ์ •์˜๋œ ์„ธ๋ถ€์ ์ธ style์ด ์žˆ๋‹ค๋ฉด ๊ทธ๊ฒƒ์„ ์‚ฌ์šฉํ•˜๊ณ ,
    ์ •์˜๋œ style์ด ์—†๋‹ค๋ฉด ๊ทธ ๋‹ค์Œ์œผ๋กœ User style๋ฅผ ์‚ฌ์šฉํ•˜๊ณ ,
    ์ •์˜๋œ style์ด ์—†๋‹ค๋ฉด ๊ทธ ๋‹ค์Œ์œผ๋กœ Broeser ๊ธฐ๋ณธ style์„ ์‚ฌ์šฉํ•จ

๐ŸŒ Website Styling

Author styleUser styleBrowser
๊ฐœ๋ฐœ์ž๊ฐ€ ์›น์‚ฌ์ดํŠธ๋ฅผ
๋งŒ๋“ค ๋•Œ ์ž‘์„ฑํ•œ style
์‚ฌ์šฉ์ž๊ฐ€ ์ง€์ •ํ•œ style
(ex. Youtube Dark Mode)
browser์—์„œ ์ง€์ •ํ•œ
๊ธฐ๋ณธ style


! important
๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ด ์—ฐ๊ฒฐ ๊ณ ๋ฆฌ๋ฅผ ๋ฌด์‹œํ•˜๊ณ  ํ•ด๋‹น ๋‚ด์šฉ์ด ์ตœ์šฐ์„ ์œผ๋กœ ๋ณด์—ฌ์ง€๊ฒŒ ๋œ๋‹ค.
! important๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ์ฝ”๋“œ๊ฐ€ ์ง€์ €๋ถ„ํ•ด์ง€๊ณ , ๋ณดํ†ต์˜ ๊ฒฝ์šฐ๋ผ๋ฉด
๋‹ค๋ฅธ ๋ฐฉ์‹์œผ๋กœ ์ˆ˜์ •ํ•˜๊ฑฐ๋‚˜ ์Šคํƒ€์ผ๋ง ํ•  ์ˆ˜ ์žˆ๊ธฐ ๋•Œ๋ฌธ์— ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๊ฒŒ ์ข‹๋‹ค!


๐ŸŽจ selector

  • CSS์‚ฌ์šฉ ์‹œ, HTML์— ์–ด๋–ค Tag๋ฅผ ๊ณ ๋ฅผ๊ฑด์ง€ ๊ทœ์ •ํ•˜๋Š” ๋ฌธ๋ฒ•
selecteor๋ฌธ๋ฒ•๋œป์˜ˆ์‹œ
Universal*๋ชจ๋“  Tag๋ฅผ ์„ ํƒ* { color : red }
TypeTagTag ์ด๋ฆ„์„ ์“ฐ๋ฉด ํ•ด๋‹น Tag๋งŒ ์„ ํƒa { color : red }
ID#idํ•ด๋‹น id๋งŒ ์„ ํƒ#test { color : red }
Class.classํ•ด๋‹น class๋งŒ ์„ ํƒ.study { color : red }
state:tag ์˜†์— state๋ฅผ ๋‹ฌ ์ˆ˜ ์žˆ์Œ(~์—)button:hover { color : red }
Attribute[]ํ•ด๋‹นํ•˜๋Š” ์†์„ฑ๊ฐ’๋งŒ ์„ ํƒp[class="study"] { color : red }

๐Ÿ‘‰ ๊ตฌ์ฒด์ ์œผ๋กœ ์œ„์น˜๋ฅผ ์ง€์ •ํ• ์ˆ˜๋ก ์šฐ์„ ์ˆœ์œ„๊ฐ€ ๋†’์Œ! (*{} < a{})

Attribute ์†์„ฑ์€ ์ด๋ ‡๊ฒŒ๋„ ์‚ฌ์šฉํ•  ์ˆ˜ ์žˆ๋‹ค!

a[href="naver.com"]{ 
	color: red;
}
a[href^="naver"]{
	color: red;
}
a[href$=".com"]{
	color: red;
}
a[href*="ver"]{
	color: red;
}
  • none: ํ•˜์ดํผ๋งํฌ์— naver.com๊ฐ€ ํฌํ•จ๋œ ๊ฒƒ๋งŒ ์„ ํƒ
  • ^: ํ•˜์ดํผ๋งํฌ๊ฐ€ "naver"๋กœ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ๋งŒ ์„ ํƒ
  • $: ํ•˜์ดํผ๋งํฌ๊ฐ€ ".com"๋กœ ๋๋‚˜๋Š” ๊ฒƒ๋งŒ ์„ ํƒ
  • *: ํ•˜์ดํผ๋งํฌ์— "ver"์ด ํฌํ•จ๋˜์–ด ์žˆ๋Š” ๊ฒƒ๋งŒ ์„ ํƒ

๐Ÿ‘‰ CSS์—์„œ ์“ฐ์ด๋Š” ๋‹ค์–‘ํ•œ ์†์„ฑ๊ฐ’๋“ค์€ CSS Reference์—์„œ ํ™•์ธ ๊ฐ€๋Šฅํ•˜๋‹ˆ
์ž์ฃผ ๋“ค์–ด๊ฐ€๋ณผ๊ฒƒ!


๐Ÿ•น Bonus!! CSS Dinner ๊ฒŒ์ž„ ํ•ด๋ณด๊ธฐ!

๐Ÿคช ์–ด๋ ค์› ๋˜ ๋‹จ๊ณ„....
19๋‹จ๊ณ„
19bento:nth-last-child(3)
nth : ~๊ฐ€ ๋“ค์–ด์žˆ๋Š” ๋ถ€๋ชจ ์ปจํ…Œ์ด๋„ˆ ๋ฐ•์Šค ์•ˆ์—์„œ
=> bento๊ฐ€ ๋“ค์–ด์žˆ๋Š” ๋ถ€๋ชจ ๋ฐ•์Šค ์•ˆ์—์„œ ๋งˆ์ง€๋ง‰์—์„œ ๋ถ€ํ„ฐ 3๋ฒˆ์งธ ์•„์ด



22๋‹จ๊ณ„

22plate:nth-of-type(2n+3)
(2n+3) = (2x0+3)..(2x1+3)..(2x2+3)
=> ๋‹จ์ˆœํ•œ 2์˜ ๋ฐฐ์ˆ˜๊ฐ€ ์•„๋‹Œ, 0๋ถ€ํ„ฐ ๊ณฑํ•˜๋Š” ๊ฒƒ!


did it!๋‹ค๊นผ๋‹น~๐Ÿ˜†๐Ÿ˜†๐Ÿ˜†๐Ÿ˜†!!!!!


๐Ÿ”— ๋„ˆ์™€ ๋‚˜์˜ ์—ฐ๊ฒฐ ๊ณ ๋ฆฌ HTML์— CSS ์—ฐ๊ฒฐ ํ•˜๊ธฐ

<head>
  <link rel="stylesheet" href="cssํŒŒ์ผ๋ช….css" type="text/css" />
</head>
  • CSS stylesheet๋Š” head์•ˆ์— link๋กœ ๊ฑธ์–ด์ค€๋‹ค!
<head>
<link href="https://fonts.googleapis.com/๊ตฌ๊ธ€ ํฐํŠธ ์ฃผ์†Œ" rel="stylesheet" />
</head>
  • ์›น ํฐํŠธ ์ฃผ์†Œ๋Š” google font์—์„œ ์ฃผ์†Œ ๋ณต์‚ฌ ํ›„ head์•ˆ์— link๋กœ ๊ฑธ์–ด์ค€๋‹ค!

์ฝ”๋ฆฐ์ด๊ฐœ๋ฐœ ์™•์ดˆ๋ณด ์ฝ”๋ฆฐ์ด์ž…๋‹ˆ๋‹ค!
์ด ๋‚ด์šฉ์€ ํ˜ผ์ž ๋™์˜์ƒ ๊ฐ•์˜&๊ตฌ๊ธ€๋ง์„ ํ†ตํ•ด ๋ฐฐ์šด ๋‚ด์šฉ์„ ์ •๋ฆฌํ•˜๋Š” ๊ฒƒ์œผ๋กœ, ์ œ๊ฐ€ ์ดํ•ดํ•˜๊ณ  ๋„˜์–ด๊ฐ„ ๊ฐœ๋…์ด ํ‹€๋ ธ๊ฑฐ๋‚˜ ๋” ๋ณด์ถฉํ•  ๊ฐœ๋…์ด ์žˆ๋‹ค๋ฉด ๋Œ“๊ธ€ ๋‚จ๊ฒจ์ฃผ์‹œ๋ฉด ์ •๋ง ๊ฐ์‚ฌํ•˜๊ฒ ์Šต๋‹ˆ๋‹ค!!

profile
ํ•˜๋ฃจ๋Š” ์น˜์—ดํ•˜๊ฒŒ ์ธ์ƒ์€ ์—ฌ์œ ๋กญ๊ฒŒ

0๊ฐœ์˜ ๋Œ“๊ธ€