웹 애플리케이션 개발을 통해 SW개발 방법 및 학습 과정을 익히기 위해서
웹은 기초이기 때문에..!
모든 요청은 URL로 이루어진다.
Rendering
요청받은 내용을 Browser 화면에 표시하는 것
W3C
WHATWG(왓위그) : Apple, Google, Microsoft, Mozilla
HTML Living Standard
Can I use semantic elements
?
Firefox 브라우져를 만든 Mozilla에서 만든 웹 분석 기술 자료이다.
개발자도구를 사용하면 미리 Debuging해서 파일에 적용시킬 수 있다.
HTML 문서 등을 편집할 때 빠른 코딩을 위해 사용되는 오픈소스
Web page 작성을 위한(구조를 잡기 위한) 언어
(= Web contents의 의미와 구조를 정의)
사용자가 요청한 데이터가 담긴 문서
사용자가 브라우저를 통해 보는 화면 => (Front-End) 화면구성 중요하다!
SW를 평가하는 척도...라고 볼 수 있다.
HyperText
Markup Language
.html
파일
DOM(Document Object Model) 트리
HTML도 Convention이 중요하다
ex) Indentation : 2 spaces / 4 spaces
html 요소
HTML 문서의 최상위 요소로, 문서의 root를 뜻한다.
head
문서 제목, 문자코드(인코딩)와 같이 해당 문서 정보를 담고 있다.
브라우저에 나타나지 않는다.
CSS 선언 혹은 외부 로딩 파일 지정 등도 작성한다.
Open Graph Protocol : MetaData를 표현하는 새로운 규약
title, description, site_name, url, type, image 등
body
브라우저 화면에 나타나는 정보로, 실제 내용에 해당한다.
header
form 태그 : 사용자로부터 입력받는 것
Sementic 태그
Style과 Layout을 통해 HTML이 어떻게 표현되는지 지정하는 언어이다.
HTML에 CSS를 적용하기 위해서는 Selector(선택자)를 사용한다
즉, 구문은 선택자(Selector)로 시작하고 그 안에서 어떤 style로 지정할지 받아들인다.
인라인(In-Line)
내부참조(Embedding)
외부 참조()
CSS 파일을 따로 만들어서 단독적인 파일로
HTML 파일에 Link 태그를 통해 적용 (경로 작성)
공통되는 부분(속성)들 => 반복이 줄어든다.
일반적인 방법
유동적으로 사용한다.
HTML 문서에서 특정한 요소를 선택하여 스타일링 하기 위해서 반드시 필요한 개념
기초 선택자
전체(Asterisk), 타입 선택자
* {}
h1 {}
클래스/아이디/속성 선택자
클래스 선택자 : 중복으로(?)
.class {}
class=""
만 그때그때 적용하면 된다.ID 선택자
#id {}
고급 선택자
.class > p {}
(직속 바로 밑에만).class p {}
포함되는 모두의사 클래스(Pseudo class)
링크, 동적 의사 클래스
구조적 의사 클래스
!important
사용 => 웬만하면 사용 XCSS는 상속을 통해 부모 요소의 속성을
모두자식에게 상속한다.
black
# + 16진수
표기법rgb()
함수형 표기법rgba()
hsla()
<img>
: 디자인 + 컨텐츠<bgi>
: 단순 디자인 요소CSS에서는 모든게 네모네모이다!
Box-Sizing
기본적으로 모든 요소의 box-sizing은 content-box이다.
(Padding을 제외한 순수 contents 영역만을 box로 지정)
but 일반적으로 영역이라 함은, border까지의 너비를 보길 원한다.
=> border-box로 맞춰서 설정!
마진 상쇄(Margin Collapsing)
top, bottom 마진이 충돌하면 가장 큰 margin으로 결합된다.
배치
인라인 / 블록 요소
Display : block
div
/ ul
, ol
, li
/ p
/ hr
/ form
등Display : inline
줄바꿈 X, 행의 일부 요소
content 너비만큼만 가로 폭 차지
width, height, margin-top ... 지정 불가
상하 여백은 line-height로 지정
span
/ a
/ img
/ input
, label
/ b
, em
, i
, strong
등
Display : inline-block
Display : none
visibility: hidden
은 빈공간 남김position 속성은 문서 상에서 요소를 배치하는 방법을 정한다.
relative
: static 위치를 기준(상대위치)absolute
: static이 아닌 가장 가까운 부모/조상 기준으로(절대위치)fixed
: 관계없이 브라우저를 기준 (ex. 내비게이션 bar)HTML : 웹 페이지가 어떻게 구조화 되어있는지 알 수 있도록 하는 마크업 언어
CSS : 사용자에게 문서를 표시하는 방법을 지정하는 언어
앞으로 Front에서 주구장창 쓸 테니 익숙해지자!!