프론트엔드/HTML,CSS
[CSS] CSS에 대해 1
Gapus
2023. 1. 5. 14:52
CSS 란?
- css는 Cascading Style Sheets로 HTML이나 XML로 작성된 문서의 표시 방법을 기술하기 위한 스타일 시트 언어이다.
- 요소가 화면, 종이, 음성이나 다른 매체 상에 어떻게 렌더링 되어야 하는지 지정한다.
CSS 특성
- 특성에는 색, 크기, 정렬 등이 존재한다.
div {
color: red;
color: rgb(255,0,0); /* RGB */
color: #FF0000; /* HEX 값 */
font-size: 20px; /* 글자크기 */
font-weight: 300; /* 글자두께 */
text-align: center; /* 가운데 정렬 */
font-family: arial; /* 글꼴 */
width: 300px; /* 넓이 */
height: 300px; /* 높이 */
background-color: red; /* 배경색 */
border: 1px solid black; /* 테두리 */
border-radius: 5px; /* 테두리의 모서리 둥글게 */
}
CSS 기본 문법
- 단일 속성 지정
selector(선택자) {
width: 300px; /* property(속성) : value(값) ; */
}
- 다중 속성 지정
selector(선택자) {
width: 300px; /* property(속성) : value(값) ; */
height: 300px; /* property(속성) : value(값) ; */
border: 1px solid black; /* property(속성) : value(값) ; */
}
CSS 사용 방법 3가지
- HTML 태그에 입력하기
<div style="margin-left: 20px;">this is block element</div>
// HTML 태그에 입력하면 유지 보수 측면에서 굉장히 비효율적
- style 태그에 입력하기
<head>
<style>
div {
width: 80px;
height: 80px;
border: 1px solid red;
padding: 10px;
}
</style>
</head>
//유지보수 측면에서는 유리할 수 있지만 관심사 분리가 안됨
- CSS 파일 분리 - 실무에서 주로 사용
<head>
<link href="style.css" rel="stylesheet" />
</head>
//실무에서 가장 많이 사용되며, 유지 보수에 유리합니다.
//파일을 불러올때는 <link> 태그를 사용합니다.
CSS 선택자
- 속성을 줄 대상을 선택할 때 사용
<style>
* { 전체 선택자
color: red;
}
div { 태그 선택자
color: red;
}
.class { 클래스 선택자
color: red;
}
#id { 아이디 선택자
color: red;
}
</style>
- 선택자는 우선순위가 존재
- 속성 값 뒤에 !important를 붙인 속성
- HTML에서 style을 직접 지정한 속성(Inline)
- #id로 지정한 속성
- .클래스, :추상클래스로 지정한 속성
- 태그이름으로 지정한 속성
- 상위 객체에 의한 상속된 속성
박스 모델
- HTML의 모든 태그들은 박스 모델 형태로 이뤄져 있다.
- margin - border를 기준으로 박스의 바깥 여백
- border - 박스의 기준이 되는 바깥 테두리 선
- padding - 박스의 안쪽 여백
- contents - 박스의 실질적인 내용 부분
- 박스 모델 화면 표시방법
- CSS 박스 모델에는 content-box, border-box가 있다.
- border-box - border가 고정되고 contents 크기가 변합니다. (박스가 고정)
- content-box - contents가 고정되고 border의 크기가 변합니다. (박스가 커짐)
- 실무에서는 박스 크기를 디자이너가 전달해준 화면과 일치시켜야 하기 때문에
바깥테두리(박스전체)를 고정시키는 border-box 사용을 권장