웹표준 : 웹에서 요구하는 공식 표준이나 기술 규격을 만족하는지 여부웹 접근성 : 장애 여부와 상관없이 모두가 웹사이트를 이용할 수 있는지 여부크로스 브라우징 : 모든 브라우저와 기기에서 웹사이트가 제대로 작동하는지 여부1. HTML : 정보 또는 설계도
2. CSS : 디자인 또는 스타일링
3. JS : 기능과 효과
<열린태그 속성="속성값"> 컨텐츠 </닫힌태그>| 태그 | 설명 |
|---|---|
<!DOCTYPE html> | - HTML5라는 신조어로 문서를 선언하는 태그 |
<html>...</html> | - HTML 문서의 시작과 끝을 의미, 모든 HTML 태그들은 <html>태그 안쪽에 입력 |
<head>...</head> | - 웹사이트의 간단한 요약 정보를 담는 영역 웹사이트에서 노출되지 않는 정보 |
<body>...</body> | - 웹사이트에서 눈에 보이는 정보를 담는 영역 이미지나 텍스트처럼 출력되는 정보 |
<meta charset="UTF-8"> | - character setting의 약자를 나타내는 문자코드 모든 문자를 웹 브라우저에서 깨짐없이 표시하겠다는 의미 - 인코딩 = 코드화 = 암호화 = 복호화 : 사람이 인지할 수 있는 형태의 데이터를 0과 1로 변환 - 디코딩 = 역코드화 = 복호화 : 인코딩의 반대 |
<title>...</title> | - 웹사이트 탭에 나타나는 제목을 적는 태그 |
<img> | - 정보성을 갖고 있는 이미지를 삽임 닫힌 태그 없음 - 정보성 : 시각적인 것은 정보라 할 수 없다 청각장애인이 알 수 있어야 한다 - src속성 : 삽입할 이미지 파일 경로 - alt속성 : 웹사이트가 이미지를 출력하지 못했을 경우, 텍스트 정보로 대체(웹접근성을 위해 필요) |
<h#>...</h#> | - Heading의 약자로 제목이나 부제목을 표현 - 숫자값이 클수록 폰트 사이즈가 작음. 즉, 숫자는 정보의 중요도를 나타냄 - h1 태그는 가장 중요한 정보를 담으므로 하나의 html 문서에서 한번만 사용됨 |
<p>...</p> | - paragraph의 약자로 본문 내용을 표현 - 웹사이트의 중요 정보를 담는 태그 - 나타내고자 하는 내용을 열린태그와 닫힌 태그 사이에 입력 |
<ul>...</ul> | - unordered list의 약자로 순서가 없는 리스트 생성 - 메뉴 버튼을 만들 때 사용되는 태그 |
<ol>...</ol> | - ul태그와 비슷하나 순서가 있는 리스트 생성 |
<header>...</header> | - 웹사이트의 머리글을 담는 공간 |
<nav>...</nav> | - 메뉴 버튼을 담는 공간 - (navigation) ul, li, a와 함께 사용 |
<main>...</main> | - 문서의 주요 내용을 담는 태그 - IE는 지원하지 않으므로 role="main" 속성 필수 입력 |
<article>...</article> | - 문서의 주요 이미지나 텍스트 등의 정보를 담고 구역을 설정하는 태그 - 태그내에 구역을 대표하는 타이틀 <h#> 태그가 존재해야 함 |
<footer>...</footer> | - 가장 하단에 들어가는 정보를 표기할 때 사용 |
<div> | - 임의의 공간을 만들때 사용 |
선택자 {속성 : 속성값;}| 기본 속성 | 설명 |
|---|---|
| width | - 선택한 요소의 넓이를 설정 가변값(%), 고정값(px) |
| height | - 선택한 요소의 높이를 설정 |
| font-family | - 쉼표로 구분하며 브라우저마다 지원하는 폰트가 다르기 때문에 입력한 순서대로 우선순위 적용 - sans-serif는 모든 브라우저에서 사용이 가능하므로 마지막에 작성하여 디폴트 값으로 준다 |
| border-style | solid(실선), dotted(점선) |
| border | - border-style, border-width, border-color를 border를 이용해서 한줄에 이어쓸수 있다 - 이때, 쉼표는 작성하지 않고 띄어쓰기만 하며 순서는 상관없다(ex. border: 10px solid red;) |
<h1 style="color:red;"> coding </h1>
<head>
<style>
h1 { background-color: yellow; }
</style>
</head>
<head>
<link rel="stylesheet" href="style.css">
</head>
<header>
<h1>HEader h1</h1>
<p>Header p</p>
</header>
・ header -> h1, header -> p : 부모 자식 관계
・ h1, p : 형제 관계
・ 선택자에서 공백을 통하여 부모 자식 관계를 나타낼 수 있다
margin -> border -> padding -> contentdisplay : block과 inline 요소의 성격을 바꿀 때 사용 inline-block을 사용하면 두 요소의 성격을 모두 가짐float : 선택된 요소를 왼쪽 끝 혹은 오른쪽 끝에 정렬시키고자 할 때 사용 이름 그대로 선택자를 띄워 새로운 레이어층을 만듬clear : float에 대한 속성을 제어하고자 할 때* 선택자를 사용하여 모든 html 태그를 선택할 수 있다rotate(45deg) : 도형 45도 회전scale(2, 3) : 가로폭 두배, 세로폭 세배 확대(기준점은 기존박스의 정가운데)translate(100px, 200px) : x좌표와 y좌표 변경skew(10deg, 20deg) : x축으로 10도, y축으로 20도 비틀기/* 맨 마지막에 작성한 효과만 적용 */
tranform : rotate(45deg);
tranform : scale(2, 3);
tranform : translate(100px, 200px);
tranform : skew(10deg, 20deg);
/* 효과 중첩 */
tranform : rotate(45deg) scale(2, 3) translate(100px, 200px) skew(10deg, 20deg);
transition-property : 적용시킬 속성transition-duration : 총 시간transition-timing-function : 진행 속도transition-delay : 시작 연기transition-property : width;
transition-duration : 2s;
transition-timing-function : linear;
transition-delay : 1s;
/* 한줄 작성 */
transition: width 2s linear 1s;
@keyframes 애니메이션이름 { }을 사용하여 효과가 어떤 형태로 일어날지 정할 수 있다animation-name : @keyframes에서 정한 이름과 동일한 이름을 사용해야 한다animation-iteration-count : 반복횟수animation-direction : 진행방향.animation {
width: 300px;
height: 300px;
background-color: yellow;
animation-name: changeWidth;
animation-duration: 3s;
animation-timing-function: linear;
animation-delay: 1s;
animation-iteration-count: 6;
animation-direction: alternate;
/* 한줄 작성 */
animation: changeWidth 3s linear 1s 6 alternate;
}
@keyframes changeWidth {
from {
width: 300px;
}
to {
width: 600px;
}
}
@media () and () { }의 형태로 미디어 쿼리를 작성.media {
width: 500px;
height: 500px;
background-color: red;
}
@media (min-width: 320px) and (max-width: 800px) {
.media {
width: 300px;
height: 300px;
background-color: yellow;
border: 10px solid blue;
}
}
/* viewport의 가로폭 = 디바이스의 가로폭, 비율은 항상 1.0 */
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<script scr="index.js"></script>"jin's home"'jin\'s home'// 이름이 있는 함수
function print() {
console.log('hi');
}
// 이름이 없는 함수
const print = function() {
console.log('hi');
}
// arrow 함수
const print = () => {
console.log('hi')
}
매개변수 : 인자로부터 전달받은 값이 들어가는 통로(상황에 따라 생략 가능)인자 : 함수에게 전달하는 데이터return : 함수 안에 데이터를 저장할 때 사용const plus = function(x, y) { // x, y : 매개변수
return x + y
}
// 함수 호출
plus(2, 5) // 2, 5 : 인자
객체명.프로퍼티명 또는 객체명['프로퍼티명']으로 값을 불러오거나 값을 변경할 수 있다const hxxjxx = {
name: 'heejin', // 프로퍼티 : 데이터
age: 25,
skills: ['HTML', 'CSS', 'JS', 'React'],
// 메서드
hello: name => console.log(`hi! ${name}`),
};
console.log(hxxjxx.age); // 25
console.log(hxxjxx['age']); // 25