CSS import 방법
- HTML 파일 안에 <link> 태그를 사용하지 않고, <style> 태그 안에 @import를 이용해서 외부 스타일 파일을 링크할 수 있음
- 형식 : @import url('파일경로');
<!-- 링크 방식 : <link rel="stylesheet" href="style.css" type="text/css"> -->
<style type="text/css">
@import url('style.css');
</style>
스타일 우선순위
- CSS에서는 부모 요소에 있는 속성들이 자식 요소에 상속된다.
- 부모 요소 : 포함하는 태그
- 자식 요소 : 포함된 태그
- 하나의 요소에 여러 스타일이 정의되어 있다면 가장 나중에 정의된 스타일이 적용된다.
선택자
- 전체 선택자 : * 을 사용해서 모든 태그에 스타일 적용
<!-- 스타일 정의 -->
<style type="text/css">
* {font-size: 20pt;} /* 글자 크기 */
</style>
<!-- 스타일 적용(body) -->
<div>안녕하세요.</div>
<br>
<span>반갑습니다.</span>
<br>
<p>좋은 하루 되세요.</p>
- 태그 선택자 : 태그명을 사용해서 해당 태그에 스타일 적용
<!-- 스타일 정의 : 태그명 { } -->
<style type="text/css">
span {background: yellow;} /* 배경색 */
</style>
<!-- 스타일 적용(body) -->
<div>안녕하세요.</div>
<br>
<span>반갑습니다.</span>
<br>
<p>좋은 하루 되세요.</p>
- 클래스 선택자 : 클래스명을 사용해서 복수의 태그에 스타일 적용
⭐ 공백을 구분자로 여러 클래스 선택자를 적용할 수 있음
<!-- 스타일 정의 : .클래스명 { } -->
<style type="text/css">
.one {color: orange;} /* 글자색 */
.two {color: blue;} /* 글자색 */
</style>
<!-- 스타일 적용(body) : class="클래스명" -->
<div class="one">안녕하세요.</div>
<br>
<span class="one">반갑습니다.</span>
<br>
<p class="one two">좋은 하루 되세요.</p>
- ID 선택자 : 클래스 선택자와 달리 문서 안에서 한 번만 적용
⭐ 태그의 ID는 중복 작성하면 안됨
<!-- 스타일 정의 : #ID명 { } -->
<style type="text/css">
#dv {font-size: 30pt; color: red;}
#sp {font-size: 20pt; color: green;}
#pg {font-size: 10pt; color: blue;}
</style>
<!-- 스타일 적용(body) : ID="ID명" -->
<div id="dv">안녕하세요.</div>
<br>
<span id="sp">반갑습니다.</span>
<br>
<p id="pg">좋은 하루 되세요.</p>
- 태그 선택자와 클래스 선택자 연계
<!-- 스타일 정의 : 태그명.클래스명 { } -->
<style type="text/css">
.item {color: orange;}
h1.item {color: blue; background-color: skyblue;}
</style>
<!-- 스타일 적용(body) -->
<h1 class="item">바다</h1>
<h1>하늘</h1>
<span class="item">햇살</span>
- 태그 선택자와 아이디 선택자 연계
<!-- 스타일 정의 : 태그명#ID명 { } -->
<style type="text/css">
h1 {color: green; background-color: gray;}
h1#target {color: pink; background: red;}
</style>
<!-- 스타일 적용(body) -->
<h1 id="target">바다</h1>
<h1>하늘</h1>
<span>햇살</span>
- 그룹 선택자 : 여러 개의 태그에 동일한 스타일을 적용할 때 쉼표(,)로 나열하여 지정
<!-- 스타일 정의 : 태그명,태그명 { } -->
<style type="text/css">
h1,p {font-size: 20pt; background: yellow;}
</style>
- 후손 선택자 : 부모 태그에 포함된 모든 태그에 스타일 적용
<!-- 스타일 정의 : 부모태그명 자식태그명 { } -->
<style type="text/css">
body div {border: 3px solid red;} /* 테두리 두께, 모양, 색*/
</style>
<!-- 스타일 적용(body) -->
<body>
<div>
<ul>
<li>봄</li>
<li>여름</li>
<li>가을</li>
<li>겨울</li>
</ul>
<div>사계절</div>
</div>
<p>
<span>춘하추동</span>
</p>
</body>
- 자식 선택자 : 해당하는 자식 태그에만 스타일 적용
<!-- 스타일 지정 : 부모태그명 > 자식태그명 { } -->
<style type="text/css">
body > div {border: 3px solid red;}
</style>
<!-- 스타일 적용(body) -->
<body>
<div>
<ul>
<li>봄</li>
<li>여름</li>
<li>가을</li>
<li>겨울</li>
</ul>
<div>사계절</div>
</div>
<p>
<span>춘하추동</span>
</p>
</body>
- 속성 선택자
- 요소[속성] : 특정 속성을 가지고 있는 태그 선택
- 요소[속성=값] : 속성 값과 같은 태그 선택
- 요소[속성~=값] : 속성 값을 단어로 포함하는 태그 선택 (공백으로 구분된 단어)
- 요소[속성^=값] : 속성 값으로 시작하는 태그 선택
- 요소[속성$=값] : 속성 값으로 끝나는 태그 선택
- 요소[속성*=값] : 속성 값을 포함하는 태그 선택 (글자 일부)
<!-- 스타일 지정 -->
<style type="text/css">
a[title] {color:red;}
a[title="category"] {color:orange;}
a[title~="phone"] {color:yellow;}
a[title^="info"] {color:green;}
a[href$=".com"] {color:blue;}
a[href*="daum"] {color:purple;}
</style>
<!-- 스타일 적용(body) -->
<a href="index.html" title="main">메인화면</a><br>
<a href="index.html" title="category">카테고리</a><br>
<a href="index.html" title="email phone address">연락처</a><br>
<a href="index.html" title="information">회사소개</a><br>
<a href="https://www.naver.com" title="Naver">네이버</a><br>
<a href="https://www.daum.net" title="Daum">다음</a>
- 가상클래스 선택자 : 실제로 존재하지 않지만 필요에 의해 만들어진 가상의 선택자
- : hover : 마우스 커서가 링크에 올라가 있는 상태
- : active : 마우스 커서를 클릭한 순간부터 놓기 직전까지 상태
- : link : 링크를 클릭하지 않는, 그냥링크되어있는 상태
- : visited : 링크를 눌러서 방문한 후 상태
<!-- 스타일 지정 -->
<style type="text/css">
a:link {
text-decoration: none; /* 밑줄 없음 */
color: rgb(255,102,102);
}
a:visited {
text-decoration: none;
color: rgb(89,71,71);
}
a:hover {
border-bottom: 1px dotted rgb(255,0,0);
background-color: skyblue;
}
a:active {
text-decoration: none;
color: white;
background-color: black;
}
</style>
<!-- 스타일 적용(body) -->
<a href="https://www.naver.com">네이버</a>
'Web > CSS3' 카테고리의 다른 글
[CSS] 위치 스타일 (0) | 2021.08.03 |
---|---|
[CSS] 박스 모델 (0) | 2021.08.03 |
[CSS] 색상 스타일, 배경 스타일 (0) | 2021.08.03 |
[CSS] 폰트 스타일, 텍스트 스타일, 목록 스타일 (0) | 2021.08.03 |
[CSS 기초] CSS 작성 방법, 스타일 적용 방식 (0) | 2021.08.02 |