HTML/CSS/Javascript

주혜진·2022년 5월 14일
0
post-thumbnail

Ⅰ. HTML, CSS, Javascript의 기본

1. HTML 기초

  1. HTML은 크게 head와 body로 구성되며, head안에는 페이지의 속성 정보를, body안에는 페이지의 내용을 담는다.
  2. head 안에 들어가는 대표적인 요소들: meta, script, link, title 등
  3. body 안에 들어가는 대표적인 요소들:
    <body>
        <!-- 구역을 나누는 태그들 -->
        <div>나는 구역을 나누죠</div>
        <p>나는 문단이에요</p>
        <ul>
            <li> bullet point!1 </li>
            <li> bullet point!2 </li>
        </ul>
        <!-- 구역 내 콘텐츠 태그들 -->
        <h1>h1은 제목을 나타내는 태그입니다. 페이지마다 하나씩 꼭 써주는 게 좋아요. 그래야 구글 검색이 잘 되거든요.</h1>
        <h2>h2는 소제목입니다.</h2>
        <h3>h3~h6도 각자의 역할이 있죠. 비중은 작지만..</h3>
        <hr>
        span 태그입니다: 특정 <span style="color:red">글자</span>를 꾸밀 때 써요
        <hr>
        a 태그입니다: <a href="http://naver.com/"> 하이퍼링크 </a>
        <hr>
        img 태그입니다: <img src="https://www.google.com/images/branding/googlelogo/1x/googlelogo_color_272x92dp.png" />
        <hr>
        input 태그입니다: <input type="text" />
        <hr>
        button 태그입니다: <button> 버튼입니다</button>
        <hr>
        textarea 태그입니다: <textarea>나는 무엇일까요?</textarea>
    </body>
  4. HTML 부모-자식 구조:
    html 태그는, "누가 누구 안에 있느냐"를 이해하는 것이 가장 중요하다.

2. css 기초

  1. CSS사용법:
    <head> ~ </head> 안에 <style> ~ </style>로 공간을 만들어 작성한다.
    ex) mytitle라는 클래스를 가리킬 때, .mytitle { ... } 라고 써줘야 하는 것을 꼭! 기억하자!
  2. 모든 CSS들을 다 알 수는 없다. 아래 CSS외의 것들은 필요할 때마다 검색해서 쓰자!
    /배경관련/
    background-color
    background-image
    background-size
    /사이즈/
    width
    height
    /폰트/
    font-size
    font-weight
    font-famliy
    color
    /간격/
    margin
    padding
  1. 부트스트랩, 예쁜 CSS 모음집 부스트트랩 컴포넌트 4.0 바로가기
    현업에서는 미리 완성된 부트스트랩을 가져다 쓰는 경우가 많다. 남이 미리 작성한 CSS를 내 HTML 파일에 적용하는 것. 단, 부트스트랩을 사용하려면 아래 부트스트랩 시작 템플릿으로 시작해야 한다.
<!doctype html>
<html lang="en">
<head>
    <!-- Required meta tags -->
    <meta charset="utf-8">
    <meta name="viewport" content="width=device-width, initial-scale=1, shrink-to-fit=no">
    <!-- Bootstrap CSS -->
    <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/css/bootstrap.min.css"
        integrity="sha384-Gn5384xqQ1aoWXA+058RXPxPg6fy4IWvTNh0E263XmFcJlSAwiGgFAW/dAiS6JXm" crossorigin="anonymous">
    <!-- Optional JavaScript -->
    <!-- jQuery first, then Popper.js, then Bootstrap JS -->
    <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.5.1/jquery.min.js"></script>
    <script src="https://cdnjs.cloudflare.com/ajax/libs/popper.js/1.12.9/umd/popper.min.js"
        integrity="sha384-ApNbgh9B+Y1QKtv3Rn7W3mgPxhU9K/ScQsAP7hUibX39j7fakFPskvXusvfa0b4Q"
        crossorigin="anonymous"></script>
    <script src="https://maxcdn.bootstrapcdn.com/bootstrap/4.0.0/js/bootstrap.min.js"
        integrity="sha384-JZR6Spejh4U02d8jOt6vLEHfe/JQGiRRSQQxSfFWpi1MquVdAyjUar5+76PVCmYl"
        crossorigin="anonymous"></script>
    <title>스파르타코딩클럽 | 부트스트랩 연습하기</title>
</head>
<body>
    <h1>이걸로 시작해보죠!</h1>
</body>
</html>

3. Javascript 기초

  1. 자바스크립트 : 프로그래밍 언어 중 하나로, 브라우저가 알아들을 수 있는 언어
  2. 사용법
    • 먼저 함수를 만들어 둔다.
     function hey(){
    	alert('안녕!');
    	}
    <head> ~ </head> 안에 <script> ~ </script> 로 공간을 만들어 작성한다.
    <script> ~ </script> 내에 자바스크립트를 작성하는 것.
    • 버튼에 함수를 연결하기 버튼을 누르면 함수가 실행된다.
 <button onclick="hey()" type="button" class="btn btn-primary">기사저장</button>
  1. 기초 문법1
    • 변수 & 기본연산
1. let으로 변수를 선언한다.
	let num = 20
    num = 'Bob'
  /변수는 값을 저장하는 박스. 한 번 선언했으면, 다시 선언하지 않고 값을 넣는다.
2. 사칙연산, 그리고 문자열 더하기가 기본적으로 가능하다.
    let a = 1
    let b = 2
    a+b // 3
    a/b // 0.5
    let first = 'Bob'
    let last = 'Lee'
    first+last // 'BobLee'
    first+' '+last // 'Bob Lee'
    first+a // Bob1 -> 문자+숫자를 하면, 숫자를 문자로 바꾼 뒤 수행한다.
3. 변수명 타입에는 2가지가 있다. 회사마다 규칙이 있음.
    let first_name = 'bob' // snake case
    let firstName = 'bob' // camel case

• 리스트 & 딕셔너리

1. 리스트: 순서를 지켜서 가지고 있는 형태
    let a_list = []  // 리스트를 선언. 변수 이름은 역시 아무렇게나 가능! // 또는,
    let b_list = [1,2,'hey',3] 로 선언.
    b_list[0] // 1 를 출력
    b_list[1] // 2 를 출력
    b_list[2] // 'hey'를 출력
    // 리스트에 요소 추가하기
    b_list.push('헤이')
    b_list // [1, 2, "hey", 3, "헤이"] 를 출력
    // 리스트의 길이 구하기
    b_list.length // 5를 출력
2. 딕셔너리: 키(key)-밸류(value) 값의 묶음
	let a_dict = {}  // 딕셔너리 선언. 변수 이름은 역시 아무렇게나 가능!// 또는,
    let b_dict = {'name':'Bob','age':21} // 로 선언.
    b_dict['name'] // 'Bob'을 출력
    b_dict['age'] // 21을 출력
    b_dict['height'] = 180 // 딕셔너리에 키:밸류 넣기
    b_dict // {name: "Bob", age: 21, height: 180}을 출력
3. 리스트와 딕셔너리의 조합
	names = [{'name':'bob','age':20},{'name':'carry','age':38}]
    // names[0]['name']의 값은? 'bob'
    // names[1]['name']의 값은? 'carry'
    new_name = {'name':'john','age':7}
    names.push(new_name)
    // names의 값은? [{'name':'bob','age':20},{'name':'carry','age':38},	{'name':'john','age':7}]
    // names[2]['name']의 값은? 'john'

• 기본 함수들

//사칙연산 외에도, 기본적으로 제공하는 여러 함수들이 존재한다.
1. 나눗셈의나머지'를 구하고 싶은 경우
    let a = 20
    let b = 7
    a % b = 6
2. 모든 알파벳을 대문자로 바꾸고 싶은 경우
	let myname = 'spartacodingclub'
	myname.toUpperCase() // SPARTACODINGCLUB
3. 특정 문자로 문자열을 나누고 싶은 경우
    let myemail = 'sparta@gmail.com'
    let result = myemail.split('@') // ['sparta','gmail.com']
    result[0] // sparta
    result[1] // gmail.com
    let result2 = result[1].split('.') // ['gmail','com']
    result2[0] // gmail -> 우리가 알고 싶었던 것!
    result2[1] // com
    myemail.split('@')[1].split('.')[0] // gmail -> 간단하게 쓸 수도 있다!
4. 특정 문자로 나누고 싶은 경우 2
	let txt = '서울시-마포구-망원동'
	let names = txt.split('-'); // ['서울시','마포구','망원동']
5. 특정 문자로 합치고 싶은 경우
	let result = names.join('>'); // '서울시>마포구>망원동' (즉, 문자열 바꾸기!)
  1. 기초 문법2
    • 함수의 기본 생김새
1. 만들기
	function 함수이름(필요한 변수들) {
	내릴 명령들을 순차적으로 작성
}
2. 사용하기
	함수이름(필요한 변수들);
3.두 숫자를 입력받으면 더한 결과를 돌려주는 함수
  	function sum(num1, num2) {
    console.log('num1: ', num1, ', num2: ', num2);
    return num1 + num2;
  }
    sum(3, 5); // 8
    sum(4, -1); // 3

• 20 보다 작으면 작다고, 크면 크다고 알려주는 함수

function is_adult(age){
	if(age > 20){
		alert('성인이에요')
	} else {
		alert('청소년이에요')
	}
}
is_adult(25)

• if, else if, else if, else if else

function is_adult(age){
	if(age > 20){
		alert('성인이에요')
	} else if (age > 10) {
		alert('청소년이에요')
	} else {
		alert('10살 이하!')
	}
}
is_adult(12)

• AND 조건과 OR 조건!

// AND 조건은 이렇게
function is_adult(age, sex){
	if(age > 20 && sex == '여'){
		alert('성인 여성')
	} else if (age > 20 && sex == '남') {
		alert('성인 남성')
	} else {
		alert('청소년이에요')
	}
}
// 참고: OR 조건은 이렇게
function is_adult(age, sex){
	if (age > 65 || age < 10) {
		alert('탑승하실 수 없습니다')
	} else if(age > 20 && sex == '여'){
		alert('성인 여성')
	} else if (age > 20 && sex == '남') {
		alert('성인 남성')
	} else {
		alert('청소년이에요')
	}
}
is_adult(25,'남')

• 예를 들어 0부터 99까지 출력해야 하는 상황이라면!

console.log(0)
console.log(1)
console.log(2)
console.log(3)
console.log(4)
console.log(5)
...
console.log(99)
// 이렇게 쓰기엔 무리가 있기 때문에 '반복문'이라는 것이 존재한다!

• 반복문을 이용하면 아래와 같이 단 세 줄로 출력가능!

for (let i = 0; i < 100; i++) {
	console.log(i);
}

• 그러나 반복문은 주로 리스트와 함께 쓰인다.

let people = ['철수','영희','민수','형준','기남','동희']
// 이렇게 하면 리스트의 모든 원소를 한번에 출력할 수 있다.
// i가 1씩 증가하면서, people의 원소를 차례대로 불러올 수 있게 된다.
for (let i = 0 ; i < people.length ; i++) {
	console.log(people[i])
}

• 반복문은 딕셔너리가 들어간 리스트와 찰떡이다!

let scores = [
	{'name':'철수', 'score':90},
	{'name':'영희', 'score':85},
	{'name':'민수', 'score':70},
  {'name':'형준', 'score':50},
  {'name':'기남', 'score':68},
  {'name':'동희', 'score':30},
]
for (let i = 0 ; i < scores.length ; i++) {
	console.log(scores[i]);
}
// 이렇게 하면 리스트 내의 딕셔너리를 하나씩 출력할 수 있고,
for (let i = 0 ; i < scores.length ; i++) {
	if (scores[i]['score'] < 70) {
		console.log(scores[i]['name']);
	}
}
// 이렇게 하면 점수가 70점 미만인 사람들의 이름만 출력할 수도 있다.
profile
coding note

0개의 댓글