Front/CSS

[CSS3] CSS μ„ νƒμž

ddo04 2024. 6. 30. 21:04

πŸ“±β€ŠCSS μ„ νƒμž

  • νŠΉμ •ν•œ HTML νƒœκ·Έλ₯Ό 선택할 λ•Œ μ‚¬μš©ν•˜λŠ” κΈ°λŠ₯
  • μ„ νƒμžλ₯Ό μ‚¬μš©ν•΄ νŠΉμ •ν•œ HTML νƒœκ·Έλ₯Ό μ„ νƒν•˜λ©΄ ν•΄λ‹Ή νƒœκ·Έμ— μ›ν•˜λŠ” μŠ€νƒ€μΌ λ˜λŠ” κΈ°λŠ₯을 적용
  • HTML νƒœκ·Έλ₯Ό 선택해 μŠ€νƒ€μΌμ„ μ μš©ν•˜κΈ° μœ„ν•΄ μ„ νƒμžλ₯Ό μ‚¬μš©
  • style νƒœκ·Έ 내뢀에 μž…λ ₯ν•΄ μ‚¬μš©
  • style νƒœκ·Έ 내뢀에 μž…λ ₯λ˜λŠ” μ½”λ“œλ₯Ό μŠ€νƒ€μΌμ‹œνŠΈλΌκ³  뢀름
h1{color:red;} 
// μ„ νƒμžλ₯Ό μ‚¬μš©ν•΄ h1 νƒœκ·Έλ₯Ό μ„ νƒν•˜κ³  color 속성에 red ν‚€μ›Œλ“œλ₯Ό μ μš©ν•˜λŠ” 예 //

πŸ“±β€Šμ „μ²΄ μ„ νƒμž

* HTML νŽ˜μ΄μ§€ λ‚΄λΆ€μ˜ λͺ¨λ“  νƒœκ·Έ 선택

- λͺ¨λ“  μ›Ή νŽ˜μ΄μ§€μ—μ„œ λΉ μ§€μ§€ μ•Šκ³  μ‚¬μš©ν•˜λŠ” μ„ νƒμž

πŸ“±β€Šνƒœκ·Έ μ„ νƒμž

νƒœκ·Έ νŠΉμ •ν•œ νƒœκ·Έλ₯Ό 선택

- h1 νƒœκ·Έμ˜ color 속성에 red ν‚€μ›Œλ“œλ₯Ό μ μš©ν•˜κ³  p νƒœκ·Έμ˜ color 속성에 blue ν‚€μ›Œλ“œ 적용

<style>
/* h1 νƒœκ·Έμ˜ color 속성에 red ν‚€μ›Œλ“œλ₯Ό 적용 */
h1{color:red;}
/* p νƒœκ·Έμ˜ color 속성에 blue ν‚€μ›Œλ“œλ₯Ό 적용 */
p{color:blue;}
</style>

πŸ“±β€Šμ•„μ΄λ”” μ„ νƒμž

#아이디 아이디 속성을 κ°€μ§€κ³  μžˆλŠ” νƒœκ·Έλ₯Ό 선택 

- νŠΉμ •ν•œ ν•˜λ‚˜μ˜ νƒœκ·Έλ₯Ό 선택할 λ•Œ μ‚¬μš©

- 곡간 λΆ„ν•  νƒœκ·Έμ— id 속성을 μ μš©ν•˜κ³  λ ˆμ΄μ•„μ›ƒμ„ ꡬ성

<style>
#header{
	width: 800px; margin: 0 auto;
    background: red;
}
#wrap{
	width: 800px; margin: 0 auto;
    overflow: hidden;
}
#aside{
	width: 200px; float: left;
    background: blue;
}
#content{
	width: 600px; float: left;
    background: green;
}
<style>
<body>
	<div id="header">
    	<h1>Header</h1>
    </div>
    <div id="wrap">
    	<div id="header">
    		<h1>Header</h1>
        </div>
        <div id="header">
    		<h1>Header</h1>
        </div>
    </div>
</body>

πŸ“± 클래슀 μ„ νƒμž

클래슀 νŠΉμ •ν•œ 클래슀λ₯Ό κ°€μ§€κ³  μžˆλŠ” νƒœκ·Έλ₯Ό 선택

- μ›Ή νŽ˜μ΄μ§€ κ°œλ°œν•  λ•Œ 많이 μ‚¬μš©ν•˜λŠ” μ„ νƒμž

<head>	
    <style>
        .select{color:red;}
	</style>
</head>
<body>
	<ul>
    	<li class="select">Lorem ipsum</li>
        <li class="select">Lorem ipsum</li>
    </ul>
</body>

πŸ“± κΈ°λ³Έ 속성 μ„ νƒμž

μ„ νƒμž νŠΉμ •ν•œ 속성이 μžˆλŠ” νƒœκ·Έ 선택
μ„ νƒμž[속성=κ°’][속성=κ°’] νŠΉμ •ν•œ 속성 μ•ˆμ˜ 값이 νŠΉμ • κ°’κ³Ό 같은 λ¬Έμ„œ 객체 선택

- μ„ νƒμž 뒀에 λŒ€κ΄„ν˜Έ([])λ₯Ό μ‚¬μš©ν•΄ 속성과 값을 μž…λ ₯

- input νƒœκ·ΈλŠ” λͺ¨λ‘ inputμ΄μ§€λ§Œ type 속성값에 따라 ν˜•νƒœκ°€ 달라짐

- input νƒœκ·Έλ₯Ό 선택할 λ•Œ κΈ°λ³Έ 속성 μ„ νƒμž 많이 μ‚¬μš©

<head>	
    <style>
        input[type=text]{background: red;}
        input[type=password]{background: blue;}
	</style>
</head>
<body>
	<form>
    	<input type="text" />
        <input type="password" />
     </form>
</body>

 

πŸ“± λ¬Έμžμ—΄ 속성 μ„ νƒμž

μ„ νƒμž[속성~=κ°’]  속성 μ•ˆμ˜ 값이 νŠΉμ • 값을 λ‹¨μ–΄λ‘œ ν¬ν•¨ν•˜λŠ” νƒœκ·Έ 선택 
μ„ νƒμž[속성|=κ°’] 속성 μ•ˆμ˜ 값이 νŠΉμ • 값을 λ‹¨μ–΄λ‘œ ν¬ν•¨ν•˜λŠ” νƒœκ·Έ 선택
μ„ νƒμž[속성^=κ°’] 속성 μ•ˆμ˜ 값이 νŠΉμ • κ°’μœΌλ‘œ μ‹œμž‘ν•˜λŠ” νƒœκ·Έ 선택
μ„ νƒμž[속성$=κ°’] 속성 μ•ˆμ˜ 값이 νŠΉμ • κ°’μœΌλ‘œ λλ‚˜λŠ” νƒœκ·Έ 선택
μ„ νƒμž[속성*=κ°’] 속성 μ•ˆμ˜ 값이 νŠΉμ • 값을 ν¬ν•¨ν•˜λŠ” νƒœκ·Έ 선택 

- νƒœκ·Έμ— μ§€μ •ν•œ μ†μ„±μ˜ νŠΉμ • λ¬Έμžμ—΄μ„ μ§€μ •

- 거의 μ‚¬μš©ν•˜μ§€ μ•Šμ§€λ§Œ 파일 ν˜•μ‹μ— 따라 μŠ€νƒ€μΌμ„ μ μš©ν•  λ•Œ 가끔 μ‚¬μš©

πŸ“± 후손 μ„ νƒμž

μ„ νƒμžA μ„ νƒμžB μ„ νƒμžA의 후손에 μœ„μΉ˜ν•˜λŠ” μ„ νƒμžB 선택

- νŠΉμ •ν•œ νƒœκ·Έ μ•„λž˜μ— μžˆλŠ” 후손을 선택할 λ•Œ μ‚¬μš©ν•˜λŠ” μ„ νƒμž

<!DOCTYPE html>
<html>
<head>
    <title>csse Selector Basic</title>
    <style>
        #header h1 {color: red;}
        #section h1 {color: blue;}
    </style>
</head>
<body>
    <div id="header">
        <h1 class="title">λŒ€λ¦ΌλŒ€ν•™κ΅</h1>
        <div id="nav">
            <h1>λŒ€λ¦ΌλŒ€ν•™κ΅</h1>
        </div>
    </div>
    <div id="section">
        <h1 class="title">λŒ€λ¦ΌλŒ€ν•™κ΅</h1>
        <p>컴퓨터 정보</p>
    </div>
</body>
</html>

πŸ“± μžμ† μ„ νƒμž

μ„ νƒμžA > μ„ νƒμžB μ„ νƒμžA의 μžμ†μ— μœ„μΉ˜ν•˜λŠ” μ„ νƒμžB 선택

- νŠΉμ • νƒœκ·Έ μ•„λž˜μ— μžˆλŠ” μžμ†μ„ 선택할 λ•Œ μ‚¬μš©ν•˜λŠ” μ„ νƒμž

<!DOCTYPE html>
<html>
<head>
    <title>csse Selector Basic</title>
    <style>
        #header > h1 {color: red;}
        #section > h1 {color: blue;}
    </style>
</head>
<body>
    <div id="header">
        <h1 class="title">λŒ€λ¦ΌλŒ€ν•™κ΅</h1>
        <div id="nav">
            <h1>λŒ€λ¦ΌλŒ€ν•™κ΅</h1>
        </div>
    </div>
    <div id="section">
        <h1 class="title">λŒ€λ¦ΌλŒ€ν•™κ΅</h1>
        <p>컴퓨터 정보</p>
    </div>
</body>
</html>

πŸ“± λ™μœ„ μ„ νƒμž

μ„ νƒμžA + μ„ νƒμžB μ„ νƒμžA λ°”λ‘œ 뒀에 μœ„μΉ˜ν•œ μ„ νƒμžB 선택
μ„ νƒμžA ~ μ„ νƒμžB μ„ νƒμžA 뒀에 μœ„μΉ˜ν•˜λŠ” μ„ νƒμžB 선택

- λ™μœ„ κ΄€κ³„μ—μ„œ 뒀에 μœ„μΉ˜ν•œ νƒœκ·Έλ₯Ό 선택할 λ•Œ μ‚¬μš©ν•˜λŠ” μ„ νƒμž

- λ™μœ„ μ„ νƒμžλ₯Ό μ‚¬μš©ν•˜λ©΄ λ™μœ„ μƒνƒœμ— μžˆλŠ” νƒœκ·Έμ˜ μœ„μΉ˜ 관계 νŒŒμ•…

- h1 νƒœκ·Έμ˜ λ°”λ‘œ 뒀에 μœ„μΉ˜ν•˜λŠ” h2 νƒœκ·Έ ν•˜λ‚˜λ₯Ό 선택할 λ•Œ + μ„ νƒμž μ‚¬μš©

- h1 νƒœκ·Έ 뒀에 μœ„μΉ˜ν•˜λŠ” λͺ¨λ“  h2 νƒœκ·Έλ₯Ό 선택할 λ•Œ ~ μ„ νƒμž μ‚¬μš©

- css3 μ• λ‹ˆλ©”μ΄μ…˜ μ‚¬μš©ν•˜μ—¬ λ™μ μœΌλ‘œ μ›€μ§€μ΄λŠ” λ ˆμ΄μ•„μ›ƒ ꡬ성 μ‹œ λ™μœ„ μ„ νƒμž μ‚¬μš©

πŸ“± λ°˜μ‘ μ„ νƒμž

:active μ‚¬μš©μžκ°€ 마우슀둜 ν΄λ¦­ν•œ νƒœκ·Έ 선택
:hover μ‚¬μš©μžκ°€ 마우슀λ₯Ό 올린 νƒœκ·Έ 선택

- μ‚¬μš©μžλ“€μ˜ λ°˜μ‘μœΌλ‘œ μƒμ„±λ˜λŠ” νŠΉμ •ν•œ μƒνƒœλ₯Ό μ„ νƒν•˜λŠ” μ„ νƒμž

- μ‚¬μš©μžκ°€ 마우슀λ₯Ό νŠΉμ •ν•œ νƒœκ·Έ μœ„μ— 올리면 hover μƒνƒœκ°€ 적용되고 ν΄λ¦­ν•˜λ©΄ active μƒνƒœκ°€ 적용

<!DOCTYPE html>
<html>
<head>
    <title>csse Selector Basic</title>
    <style>
        h1:hover {color: red;}
        h1:active {color: blue;}
    </style>
</head>
<body>
    <h1>λŒ€λ¦ΌλŒ€ν•™κ΅</h1>
</body>
</html>

πŸ“± μƒνƒœ μ„ νƒμž

:checked 체크 μƒνƒœμ˜ input νƒœκ·Έ 선택
:focus 초점이 λ§žμΆ”μ–΄μ§„ input νƒœκ·Έ 선택
:enabled μ‚¬μš© κ°€λŠ₯ν•œ input νƒœκ·Έ 선택
:disabled μ‚¬μš© λΆˆκ°€λŠ₯ν•œ input νƒœκ·Έ 선택

- μž…λ ₯ μ–‘μ‹μ˜ μƒνƒœλ₯Ό 선택할 λ•Œ μ‚¬μš©ν•˜λŠ” μ„ νƒμž

- μ–΄λ–€ μƒνƒœμΈμ§€ μ•Œμ•„μ•Ό μƒνƒœ μ„ νƒμžλ₯Ό μ‰½κ²Œ μ‚¬μš©κ°€λŠ₯

- checked μƒνƒœλŠ” type 속성값이 checkbox λ˜λŠ” radio인 input νƒœκ·Έκ°€ μ„ νƒλœ μƒνƒœ

- focus μƒνƒœλŠ” μ‚¬μš©μžκ°€ μ΄ˆμ μ„ λ§žμΆ”κ³  μžˆλŠ” μž…λ ₯ 양식에 μ μš©λ˜λŠ” μƒνƒœ

- enabled μƒνƒœλŠ” input νƒœκ·Έκ°€ μ‚¬μš© κ°€λŠ₯ν•œ μƒνƒœλ₯Ό λ‚˜νƒ€λƒ„

- disabled μƒνƒœλŠ” input νƒœκ·Έκ°€ μ‚¬μš© λΆˆκ°€λŠ₯ν•œ μƒνƒœλ₯Ό λ‚˜νƒ€λƒ„

πŸ“± 일반 ꡬ쑰 μ„ νƒμž

:first-child ν˜•μ œ 관계 μ€‘μ—μ„œ 첫 λ²ˆμ¨°μ— μœ„μΉ˜ν•˜λŠ” νƒœκ·Έ 선택
:last-child ν˜•μž¬ 관계 μ€‘μ—μ„œ λ§ˆμ§€λ§‰μ— μœ„μΉ˜ν•˜λŠ” νƒœκ·Έ 선택
:nth-child(μˆ˜μ—΄) ν˜•μ œ 관계 μ€‘μ—μ„œ μ•žμ—μ„œ μˆ˜μ—΄ λ²ˆμ¨°μ— νƒœκ·Έ 선택
:nth-last-child(μˆ˜μ—΄) ν˜•μ œ 관계 μ€‘μ—μ„œ λ’€μ—μ„œ μˆ˜μ—΄ λ²ˆμ§Έμ— νƒœκ·Έ 선택

- νŠΉμ •ν•œ μœ„μΉ˜μ— μžˆλŠ” νƒœκ·Έλ₯Ό μ„ νƒν•˜λŠ” μ„ νƒμž

<!DOCTYPE html>
<html>
<head>
    <title>csse Selector Basic</title>
    <style>
        ul{overflow: hidden;}
        li{
            list-style: none;
            float: left; padding: 15px;
        }

        li:first-child{border-radius: 10px 0 0 10px;}
        li:last-child{border-radius: 0 10px 10px 0;}

        li:nth-child(2n){background-color: red;}
        li:nth-child(2n+1){background-color: blue;}
    </style>
</head>
<body>
    <ul>
        <li>F</li>
        <li>S</li>
        <li>T</li>
        <li>F</li>
        <li>F</li>
        <li>S</li>
        <li>S</li>
    </ul>
</body>
</html>

πŸ“± ν˜•νƒœ ꡬ쑰 μ„ νƒμž

:first-of-type ν˜•μ œ 관계 μ€‘μ—μ„œ 첫 번째둜 λ“±μž₯ν•˜λŠ” νŠΉμ • νƒœκ·Έ 선택
:last-of-type ν˜•μ œ 관계 μ€‘μ—μ„œ λ§ˆμ§€λ§‰μœΌλ‘œ λ“±μž₯ν•˜λŠ” νŠΉμ • νƒœκ·Έ 선택
:nth-of-type(μˆ˜μ—΄) ν˜•μ œ 관계 μ€‘μ—μ„œ μ•žμ—μ„œ μˆ˜μ—΄ 번쨰둜 λ“±μž₯ν•˜λŠ” νŠΉμ • νƒœκ·Έ 선택
:nth-last-of-type(μˆ˜μ—΄) ν˜•μ œ 관계 μ€‘μ—μ„œ λ’€μ—μ„œ μˆ˜μ—΄ 번째둜 λ“±μž₯ν•˜λŠ” νŠΉμ • νƒœκ·Έλ₯Ό
선택

- 일반 ꡬ쑰 μ„ νƒμžμ™€ λΉ„μŠ·ν•˜μ§€λ§Œ νƒœκ·Έ ν˜•νƒœλ₯Ό ꡬ뢄

πŸ“± μ‹œμž‘ 문자 μ„ νƒμž

::first-letter 첫 번쨰 κΈ€μž 선택
::first-line 첫 번째 쀄 선택

- νƒœκ·Έ λ‚΄λΆ€μ˜ 첫 번째 κΈ€μžμ™€ 첫 번쨰 쀄을 선택할 λ•Œ μ‚¬μš©ν•˜λŠ” μ„ νƒμž

πŸ“± μ „ν›„ 문자 μ„ νƒμž

::after νƒœκ·Έ 뒀에 μœ„μΉ˜ν•˜λŠ” 곡간 선택
::before νƒœκ·Έ μ•žμ— μœ„μΉ˜ν•˜λŠ” 곡간 선택 

- content 속성 μ‚¬μš©

πŸ“± λ°˜μ‘ 문자 μ„ νƒμž

::selection μ‚¬μš©μžκ°€ λ“œλž˜κ·Έν•œ κΈ€μž 선택

- μ‚¬μš©μžκ°€ λ¬Έμžμ™€ λ°˜μ‘ν•΄μ„œ μƒκΈ°λŠ” μ˜μ—­μ„ μ„ νƒν•˜λŠ” μ„ νƒμž

πŸ“± 링크 μ„ νƒμž

::link href 속성을 κ°€μ§€κ³  μžˆλŠ” aνƒœκ·Έ 선택
::visited λ°©λ¬Έν–ˆλ˜ 링크λ₯Ό κ°€μ§€κ³  μžˆλŠ” aνƒœκ·Έ 선택

- ν•œ 번 이상 λ‹€λ…€μ˜¨ 링크λ₯Ό 선택할 수 μžˆλŠ” μ„ νƒμž

πŸ“± λΆ€μ • μ„ νƒμž

:not(μ„ νƒμž) μ„ νƒμžλ₯Ό λ°˜λŒ€λ‘œ 적용

- μ„ νƒμžλ₯Ό λͺ¨λ‘ λ°˜λŒ€λ‘œ μ μš©ν•  수 있게 λ§Œλ“œλŠ” μ„ νƒμž

 

 

'Front > CSS' μΉ΄ν…Œκ³ λ¦¬μ˜ λ‹€λ₯Έ κΈ€

[CSS3] μΆ”κ°€ κ·œμΉ™  (0) 2024.07.07
[CSS3] CSS λ³€ν™˜  (0) 2024.07.03
[CSS3] CSS3 λ³€ν˜•κ³Ό μ• λ‹ˆλ©”μ΄μ…˜  (0) 2024.07.02
[CSS3] CSS μŠ€νƒ€μΌ 속성  (0) 2024.07.02