문법
- 선택자
- CSS는 HTML 태그 요소를 선택하여 디자인 속성을 정의한다
- 선택자는 태그 이름, 속성의 나열로 구성된다
- 속성 선택자
- 특정 값과 일치하는 속성 [attr='value']
- 특정 단어를 포함하는 속성 [attr~='word']
- 특정 값을 포함하는 속성 [attr*='value']
- 특정 단어로 시작하는 속성 [attr|='word']
- 특정 값으로 시작하는 속성 [attr^='value']
- 특정 값으로 끝나는 속성 [attr$='value']
- 복합 선택자
- 후손 : ' '(스페이스)
- 자식 : '>'
- 바로 다음 형제 : '+'
- 다음 모든 형제 : '~'
- 가상 클래스
- 요소들의 상태들을 정의한 Pseudo-Class가 존재한다. 일반 클래스와 달리 ':'으로 구별한다
- a: active, hover, link, visited
- input: checked, disabled, enabled, focus, in-range, out-of-range, valid, invalid, read-only, read-write, required, optional
- :first-child, last-child, nth-child(n), nth-last-child(n)
- :not(selector)
- 가상 요소
- 요소의 특정 부분 선택
- 요소 내부에 익명 요소 추가
- 유저가 블록 지정한 요소들 선택 ::selection
- 변수
- 변수 선언
- 변수 사용
- meadia query
↓ css
↓ css
첫 번째 글자 ::first-letter, 첫 번째 줄 ::first-line
앞부분에 추가 ::before, 뒷부분에 추가 ::after
↓ css
↓ css
Syntax::= @media not|only mediatype and (media feature and|or|not mediafeature) { CSS-Code; }css3_pr_mediaquery.asp
디자인
- 공통 속성
- 배경색 background-color: color;
- 배경 이미지 background-image: url("url")
- 외곽선 border-style: dotted | dashed | solid | double | groove | none | hidden | ...
- 두께 border-width: width; » 색상 border-color: color; » 곡률 border-radius: radius;
- 방향별로 설정 가능 : top, bottom, left, right
- margin 밖의 외곽선 outline도 존재
- 외부 여백 margin: auto | size | % | inherit;
내부 여백 padding: size | % | inherit; - 너비 width: auto | size | %, 높이 height: auto | size | %
- 최대 너비 max-width: none | size | %, 최대 높이 max-height: none | size | %
- 최소 너비 min-width: size | %, 최소 높이 min-height: size | %
- 텍스트
- 색상 color: color;
- 정렬 text-align: left | center | right | justify(양쪽정렬)
- 꾸밈선 text-decoration: none | overline | line-through | underline
- 대소문자 강제 text-transform: uppercase | lowercase | capitalize
- 들여쓰기 text-indent: size
- 자간 letter-spacing: size, 단어 간격 word-spacing: size
- 글자 크기 font-size: size, 줄 간격을 포함한 높이 line-height: size(배율)
- 글자 두께 font-weight: normal|bold|bolder|lighter|number|initial|inherit;
그림자 text-shadow: h-shadow v-shadow blur-radius color|none|initial|inherit; - 폰트 font-family: family-name|generic-family|initial|inherit;
- 영역을 벗어난 텍스트 처리 text-overflow, text-break, text-wrap참고
- 리스트
- 리스트 아이템 이미지 마크 설정 list-style-image: none|url|initial|inherit;
- 리스트 아이템 마커 타입 list-style-type: value;참고
- 리스트 아이템 마커 위치 list-style-position: inside | outside;
- 보여주기 속성
- display: none | block | inline | inline-block(너비/높이 속성을 가질 수 있다)참고
- visibility: visible | hidden(자리는 차지) | collapse | initial | inherit;
- 위치 position: static | relative | fixed | absolute | sticky;
- z축 우선순위 z-index: number;
- 넘침 영역 overflow, overflow-x, overflow-y: visible | hidden | scroll | auto | initial | inherit;
- 띄우기 float: none | left | right | initial | inherit;
- float 요소를 배제하여 구분된 영역 이용 clear: none | left | right | both | inherit;
- 불투명도 opacity: [0.0-1.0]; 또는 RGBA 이용
- box-shadow: none|h-offset v-offset blur spread color |inset|initial|inherit;
- 다단참고
- 사용자가 크기 조절 resize: none|both|horizontal|vertical|initial|inherit;
이미지 잘라넣기 : 투명한 img로 자리를 차지하고, background: url('url') 시작w 시작h; 설정
외곽 이미지배경 이미지이미지 스타일링img 크기에 맞추는 방식
변형
- © Donggi Kim. MIT License
- w3css : No license
- highlight.js : BSD-3-Clause License
- MathJax : Apache License 2.0
- qrcodejs : MIT License