시작하기
웹 표준을 준수한 사이트 만들기
CSS 사용방법
inline 방식
- 태그 요소에 직접 사용하는 방법
- CSS를 바로 적용하기가 편하지만, 소스가 많아지면 수정과 관리가 어렵다.(실무사용x)
<p style="color:red"> 태그요소에 직접 사용하는 방법</p>
Style tag 방식
- head에 style을 지정하고 사용하는 방법
- CSS를 바로 적용하기가 편하지만, 소스가 많아지면 수정하기 어렵다.
- 로딩 속도가 제일 빠르다.
<head>
<style type="text/css">
p{color:red;}
</style>
</head>
외부파일 방식
- head에 경로를 설정하고 사용하는 방법
<link rel="stylesheet" type="text/css" href="경로"/>
CSS Color
CSS로 색상을 지정하는 방법은 16진수 코드, RGB, RGBA, HSL, HSLA, 색이름 표기법이 있습니다.
16진수 코드
- 웹 페이지에서 색상을 표현하는 가장 기본적인 방법으로 16진수로 표시합니다. #RRGGBB형식으로 RR은 빨간색, GG는 초록색, BB는 파란색의 양을 표시합니다.
- 각 색상마다 하나도 섞이지 않았음을 표시하는 00에서부터 해당 색이 섞였음을 표시하는 FF까지, 사용할 수 있으며 값은 #000000(검은색)에서부터 #FFFFFF(흰색)까지입니다.
RGB / RGBA
-RGB 방식은 Red, Green, Blue의 색의 양을 나타내는데, 16진수가 아닌 십진수로 표현합니다. 하나도 섞이지 않았을 때는 0으로 가득 섞였을 때는 255로 표시하며, 그 사이의 값으로 색상의 양을 조절합니다.
- RGB는 빛의 삼원색인 Red, Green, Blue의 값을 0과 255사이로 표현하였습니다.
- RGBA는 빛의 삼원색인 Red, Green, Blue, Alpha(투명도)를 조합한 색을 말합니다.
HSL / HSLA
- hsl은 hue(색상), saturation(채도), lightness(밝기)를 나타내며, 색상은 색의 3요소 중 하나로, 각도를 기준으로 색상을 둥글게 배치한 색상환으로 표시합니다. 0도와 360도에는 빨간색을, 120도에는 초록색을, 240도에는 파란색을 배치하고 그 사이사이에 나머지 색들이 배치됩니다. 채도 역시 색의 3요소 중 하나로 %로 표시하는데, 아무것도 않은 상태가 가장 채도가 높은 상태입니다. 채도가 0%이면 회색톤으로, 채도가 100%이면 순색으로 표시됩니다. 밝기 또한 %로 표시하는데, 0%가 가장 어둡고 100%가 가장 밝습니다
- hsl는 색상, 채도, 명도로 나타냅니다.
- hsla는 색상, 채도, 명도, 투명도로 나타냅니다.
색 이름 표기
- 가장 많이 쓰는 색상을 이름으로 표시할 수 있습니다.
- 17가지 기본 색상 : aqua, black, blue, fuchsia, gray, grey, green, lime, marron, navy, olibe, purple, red, silver, teal, white, yellow
CSS Selector
div {width:100px;}
- div : 선택자
- width : 속성
- 100px : 속성값
- {} : 중괄호
- : 콜론 ; 세미콜론
id 선택자
- 하나의 태그만 식별하기 위한 선택 방법입니다.
- CSS에서는 "#"이라고 표시합니다.
- 우선순위가 가장 높습니다.
class 선택자
- 여러개의 태그에 중복 사용이 가능한 선택 방법입니다.
- CSS에서는 "."이라고 표시합니다.
- 한 가지 태그에 2개 이상 class
type 선택자
하위 선택자
전체 선택자
float
float으로 인한 영역 깨짐 방지법
- 1. 깨지는 영역에 똑같이 float을 사용한다.
- 2. float의 영향을 차단하는 clear:both; 를 사용한다.
- 3. 상위박스 요소에게 overflow:hidden; 를 사용한다.
margin
요소와 요소의 간격(바깥쪽 여백)
Value
- 길이 : 고정된 값을 지정
- 백분율 : 퍼센트 지정 가능
- auto : 기본값, 자동값
- inherit : 상속값
표현방법
- margin-top:10px;
- marign-right:11px;
- marign-bottom:12px;
- marign-left:13px;
- marign:10px 11px 12px 13px; (위, 오른쪽, 아래, 왼쪽)
- margin:10px 11px 12px; ( 위10px / 오른쪽,왼쪽 11px / 아래12px)
- margin:10px 11px; ( 위,아래10px / 오른쪽,왼쪽11px)
- margin:10px; (위, 오른쪽, 아래, 왼쪽 : 10px)
- margin:0 auto 0 auto; (위0, 오른쪽auto, 아래0, 왼쪽auto / 가운데 정렬:블록구조)
padding
박스 요소의 안쪽 여백
Value
- 길이 : 고정된 값을 지정
- 백분율 : 퍼센트 지정 가능
- auto : 기본값, 자동값
- inherit : 상속값
표현방법
- padding-top:10px;
- padding-right:11px;
- padding-bottom:12px;
- padding-left:11px;
- padding:10px 11px 12px 13px;(위,오른쪽,아래,왼쪽)
- padding:10px 11px 12px (위10px /오른쪽,왼쪽11px / 아래12px)
- padding:10px 11px(위,아래:10px / 오른쪽,왼쪽:11px)
- padding:10px ;(위,오른쪽,아래,왼쪽:10px)
border
박스 요소의 테두리
border-width
- thin : 얇은 테두리
- medium(default) : 중간테두리
- thick : 두꺼운 테두리
- 길이 : 테두리의 두께를 지정하는 값
- inherit : 상속값
border-style
- solid : 실선
- dashed : 짧은 선들의 패턴
- dotted : 점선
- double : 두개의 선
- groove : 안으로 조각되어진 것처럼 보임
- ridge : 튀어 나와서 조각되어진 것처럼 보임
- inset : 안으로 입체감을 느끼게 함
- outset : 밖으로 입체감을 느끼게 함
- none(default) : 테두리를 지정하지 않음
border-color
- 색상
- transparent
- border-top-color / border-right-color / border-left-color / border-bottom-color
속기형 작성
background
배경의 속성을 지정합니다.
background-color
- 색상값:#fff, rgb, hsl, blue
- transparent(default) : 투명도
- inherit : 상속값
background-image
- url : 배경 이미지 경로
- none : 이미지를 사용하지 않을 때
- inherit : 상속값
background-repeat
- repeat(default) : 배경이미지가 수직과 수평으로 반복
- repeat-x : 배경이미지가 수평으로만 반복
- repeat-y : 배경이미지가 수직으로만 반복
- no-repeat : 배경이미지가 반복없이 한번만 나타남
- inherit : 상속값
background-attachment
- scroll(default) : 배경이미지가 화면에 따라 스크롤
- fixed : 배경이미지를 화면에 고정
- inherit : 상속값
background-position
- 위치 : left, right, top, bottom
- inherit 안됨 : 상속값 안됨
position
배치 방법을 지정합니다.
static(default)
- 일반적인 배치방법
relative
- 상대적인 배치방법
- top, left, bottom, right를 기준으로 배치
- 요소 배치에 영항을 주지 않고 영역을 차지하지 않습니다.
absolute
- 절대적인 배치방법
- top, left, bottom, right를 기준으로 배치
- 요소 배치에 영항을 주지 않고 영역을 차지하지 않습니다.
fixed
- 고정적인 배치방법
- top, left, bottom, right를 기준으로 배치
- 요소 배치에 영항을 주지 않고 영역을 차지하지 않습니다.
font
폰트 속성을 지정합니다.
font-family
- 글꼴 설정
font-style
- 글꼴 스타일 설정
- normal : 기본값
- italic : 기울기
- oblique : 기울기
font-variant
- 글꼴 변형 지정
- normal : 기본값
- small-caps : 소문자 크기의 대문자를 말합니다.(한국어 설정 안됨)
font-weight
- 글꼴의 굵기를 지정
- normal : 기본, 글꼴 400과 같은 굵기
- bold : 두껍게 지정, 글꼴 700과 같은 굵기
- bolder : 더 두껍게 지정, 글꼴 900과 같은 굵기
- lighter : 얇게 지정, 글꼴 100과 같은 굵기
- 100~900 : 글꼴을 9단계의 굵기로 지정
- inherit : 상속값
font-size
- 폰트 사이즈 설정
- 절대 크기 : xx-small, x-small, small, medium, large, x-large, xx-large
- 상대크기 : larger, smaller
- 길이 : em, px
- 백분율 : %
text
텍스트 속성을 지정합니다.
text-align
- 인라인 요소 수평 정렬을 지정합니다.
- left : 왼쪽 정렬
- right : 오른쪽 정렬
- center : 가운데 정렬
- justfy : 양쪽 정렬
- inherit : 상속값
text-indent
- 텍스트 요소 첫번째 줄 들여쓰기를 지정합니다.
- 길이, 백분율
- inherit : 상속값
text-decoration
- 텍스트 요소의 밑줄, 윗줄, 가운데줄과 같은 장식적인 요소를 지정합니다.
- none : 아무것도 지정하지 않은 기본 스타일
- underline : 텍스트의 밑줄을 지정
- overline : 텍스트의 윗줄을 지정
- line-through : 텍스트의 가운데 줄 지정
- blink : 텍스트를 깜빡거리게 지정
- inherit : 상속값
text-shadow
- 텍스트에 그림자 효과를 지정
text-transform
- 텍스트의 대문자, 소문자를 지정합니다.
- capitalize : 단어의 첫번째 글자를 대문자로 지정
- uppercase : 모든 글자를 대문자로 지정
- lowercase : 모든 글자를 소문자로 지정
- none : 효과를 지정하지 않음
- inherit : 상속값
text-spacing
- 글자 사이의 간격을 지정합니다.
word-spacing
- 단어 사이의 간격을 지정합니다.
white-space
- 공백문자를 어떻게 다룰것인가를 정의합니다.
- normal : 정상적으로 출력하도록 지정, 연속된 공백문자나 줄바꿈을 통합합니다.
- pre : 연속된 공백 문자나 줄바꿈을 통합하지 않고, 원문 그대로 출력됩니다.
- nowrap : 연속된 공백 문자는 통합하지만, 줄바꿈은 통합하지 않습니다.
- inherit : 상속값
display
요소의 디스플레이 속성을 지정.
Value
- block : 요소의 속성을 블럭으로 만듭니다.
- inline : 요소의 속성을 인라인으로 만듭니다.
- inline-block : 인라인 속성을 가지고 있으면서 블록 속성을 동시에 가집니다.
- list-item : li가 갖는 기본 속성을 적용시킵니다.
- none : 요소를 보이지 않게 해줍니다.(반대는block)
- table : 요소의 속성을 테이블로 만듭니다.
- inline-table : 요소의 속성을 inline-table로 만듭니다.
- table-row-group : 요소의 속성을 table-row-group로 만듭니다.
- table-colum : 요소의 속성을 table-colum로 만듭니다.
- table-colum-group : 요소의 속성을 table-colum-group로 만듭니다.
- table-header-group : 요소의 속성을 table-header-group로 만듭니다.
- table-footer-group : 요소의 속성을 table-footer-group로 만듭니다.
- table-row : 요소의 속성을 table-row로 만듭니다.
- table-cell : 요소의 속성을 table-cell로 만듭니다.
- table-caption : 요소의 속성을 table-caption로 만듭니다.
z-index
요소가 겹치는 순서를 지정합니다.
Value
- 정수 값이 클수록 위에 표시됩니다.
list-style
목록 항목의 속성을 지정합니다.
list-style-type
- disc : 속이 찬 원형 블릿
- circle : 속이 빈 원형 블릿
- square : 속이 찬 사각형 블릿
- decimal : 1부터 시작하는 10진수
- decimal-leading-zero : 01부터 시작하는 10진수
- lower-roman : 로마 숫자의 소문자
- upper-roman : 로마 숫자의 대문자
- lower-greek : 고대 그리스 문자의 소문자
- lower-alpha : 알파벳의 소문자
- lower-latin : 라틴어의 소문자
- upper-alpha : 알파벳의 대문자
- hebrew : 헤브리이 숫자
- katakana : 일본의 카타카나
- none : 지정하지 않는다.
list-style-position
- outside : 항목 표시자를 블럭 박스 밖에 위치시킵니다.
- inside : 항목 표시자를 블럭 박스 안에 위치시킵니다.
list-style-image
- url : 목록 항목 표시자로 사용될 이미지를 설정합니다.
- none : 지정하지 않습니다.