HTML5, CSS3/HTML5, CSS3

23-02-16 HTML5

모건이삼촌 2023. 2. 16. 17:39

※ 복습

인라인태그

블록태그

 - h계열태그 태그

 - 영역을 담당하는 div태그

 

1. 시멘틱 태그

 1) header

  - 문서나 섹션의 머릿글을 지정

  - footer, section내에도 사용 가능

 2) main

  - 본문

  - 

 3)footer

  - 문서 또는 섹션의 바닥글을 지정

 4) nav

  - 전역 탐색 바

  - GNB : 상단 네비게이션 바

  - LNB : 서브메뉴 네비게이션 바

 5) aside

  - 보통 우측에 많이 붙음

  - 로그인, 로그아웃, 검색 및 찾기, 사이드메뉴 등이 포함

 6) section

  - 문서 내에서 같은 의미의 영역 제목으로 시작하는 콘텐츠를 나눌 때 사용

  - 아티클의 묶음

 7) article

  - 문서 내의 독립적인글, 블로그 글이나 뉴스 본문등을 구성하는 섹션

  - 아티클 요소는 교차형태로 많이 사용

 
※ ID, CLASS, DATE

1. 네이밍 공통 규칙

 - 가급적 영문 소문자를 권장

 - 두번째 부터는 숫자 문자 혼용사용 가능

 - 공백은 절대 허용하지 않음

 

 1) id네이밍의 규칙

  - camel표기법 사용

  - html문서에서 같은 id를 가진 요소를 두개 이상 가질 수 없다 (유일성)

  - id이름은 대소문자를 구분함

  - id이름은 하나 이상의 문자를 포함해야 하며 공백, 탭 을 포함하지 않아야 함

  - 예약어가 있으면 되도록 예약을 사용

 

 2) class 네이밍 규칙

  - 스네이크 케이스 표기법을 따름

  - 영문 소문자를 사용, 두번째 단어 앞에 붙임표(-)로 연결하고 대문자는 사용하지 않음

  - 하이픈은 2개 이상의 단어를 조합할 때만 사용

  - 예약어가 있으면 되도록 예약어를 첫단에 붙여서 사용

  - 하이픈은 3단계를 초과하지 않도록 권장

  - 태그간에 공통을 묶기위한 이름

 

 3) data 네이밍 규칙

  - 데이터를 저장할 목적

  - 스네이크 케이스 표기법을 따름

  - 반드시 첫 단어는 data- 로 시작하고 이름은 붙임표로 연결하고 대문자는 사용하지 않음

  - 첫단어는 data 두번째 이름은 키 이름이다

  - 태그에 변수명을 붙이는것

 

 4) 폼 욧, 파일, 폴더, 이미지 네이밍 규칙

  - 첫번째 단어와 두번째 단어 사이에 언더바를 사용

  - 파일, 폴더이름은 숫자를 사용하되 숫자 앞에 0을 붙임 (예) img_01, folder_01)

  - 파일, 폴더명에는 한글이 사용되면 안됨

  - 공통폴더이름을 common으로 권장

 

 2. id요소의 개념

  - js, jquery에서 사용됨

  - id는 대소문자를 구분

  - 

 

 3. class 요소의 개념

  - class 이름은 소문자만 사용해야함

  - 특정 클래스를 가진 요소에 액세스하고 조작하기위해 jsjQuery에서 사용됨

예제

<!DOCTYPE html>
<html>
<head>
  <meta charset='utf-8'>
  <meta http-equiv='X-UA-Compatible' content='IE=edge'>
  <title>Page Title</title>
  <meta name='viewport' content='width=device-width, initial-scale=1'>
  <style>
    .box{width: 100px; height: 100px;}
    .box1{background-color: red;}
    .box2{background-color: yellow;}
    .box3{background-color: green;}
    .box4{background-color: blue;}
  </style>
</head>
<body>
  <div>
   <div class="box box1"></div>  
   <div class="box box2"></div>  
   <div class="box box3"></div>  
   <div class="box box4"></div>  
  </div>
</body>
</html>

4. data 요소의 개념

  - html문서에서 같은 data이름을 가진 요소를 두개 이상 가질수 없다

  - p.189

  <script>
    let boxes = document.getElementsByClassName("box")
    for(let i=0; i<boxes.length; i++) {
      console.log(boxes[i].dataset.type);
      boxes[i].dataset.num = i+1;
    }
  </script>

 

※ 스타일 시트 CSS3

 1. 개념

  - CSS는 Cascading Style Sheets의 약어이다

  - 

 

 2. 장점

 - 작은용량, 이해하기 쉬운 구조

 - 디자인과 웹 구조의 완벽한 분리구조

 - 

 

 3. 기본문법

 선택자 { 속성 : 값; 속성 : 값;}

예) section1 {color:blue; font-size:15px;}

 - 구문은 크게 2가지로 구분되며 선택자, 선언부로 구성된다

 - 선택자는 아이디, 클래스, 태그요소등을 가리킴

 - 선언부의 선언

 

 4. css적용 방법

 html문서에 css를 적용하는 방법에는 내부스타일시트, 외부스타일시트, 인라인 스타일 총 4가지방법이 있음 

 

 4-1) 내부 스타일 시트

<html>
<head>
  <meta charset='utf-8'>
  <meta http-equiv='X-UA-Compatible' content='IE=edge'>
  <title>Page Title</title>
  <meta name='viewport' content='width=device-width, initial-scale=1'>
  <style>
    .box{width: 100px; height: 100px;}
    .box1{background-color: red;}
    .box2{background-color: yellow;}
    .box3{background-color: green;}
    .box4{background-color: blue;}
  </style>
</head>
<body>
  <div>
   <div class="box box1" data-type="빨간색"></div>  
   <div class="box box2" data-type="노란색"></div>  
   <div class="box box3" data-type="초록색"></div>  
   <div class="box box4" data-type="파란색"></div>  
  </div>
  <script>
    let boxes = document.getElementsByClassName("box")
    for(let i=0; i<boxes.length; i++) {
      console.log(boxes[i].dataset.type);
      boxes[i].dataset.num = i+1;
    }
  </script>
</body>
</html>

 4-2) 외부 스타일 시트

   - css 혹은 js 파일을 작성하고 해당 폴더에서 호출하여 사용하는 방식

<!DOCTYPE html>
<html>
<head>
  <meta charset='utf-8'>
  <meta http-equiv='X-UA-Compatible' content='IE=edge'>
  <title>Page Title</title>
  <meta name='viewport' content='width=device-width, initial-scale=1'>
  <link rel="stylesheet" href="css/common.css">
</head>
<body>
  <div>
   <div class="box box1" data-type="빨간색"></div>  
   <div class="box box2" data-type="노란색"></div>  
   <div class="box box3" data-type="초록색"></div>  
   <div class="box box4" data-type="파란색"></div>  
  </div>
  <script src="js/common.js"></script>
</body>
</html>

 

3. 인라인 스타일 

 - 우선순위가 높음

 - 관리가 힘들어 사용을 권장하지 않음

 

4. Cascading

 4-1) 개요

 cascading은 사전적의미로 폭포수의 탑 다운방식의 의미를 가지고 있음

위에서 아래로 css에서는 디자인 속성이 html문서의 구조 DOM Tree구조에서 상위 요소에서 정의한 디자인 속성이 하위요소로 전달되는 의미에서 유래되었다고 함 (몇몇 요소는 상속되고 몇몇요소는 상속되지않음)

 

4-2) 스타일 우선순위

 사용자의 중요 스타일 (고대비)

 개발자의 중요 스타일 (important)

 개발자의 일반 스타일

  - 인라인 > 아이디 > 클래스 > 태그

 사용자의 일반 스타일

 브라우저 기본 스타일

 

예제)

<!DOCTYPE html>
<html>
<head>
  <meta charset='utf-8'>
  <meta http-equiv='X-UA-Compatible' content='IE=edge'>
  <title>Page Title</title>
  <meta name='viewport' content='width=device-width, initial-scale=1'>
  <style>
    html body .cls{background-color: yellow;}
    body .cls{background-color: aqua;}
    div.cls{background-color: blue;}
    .cls{background-color: green;}
    div {width: 100px; height: 100px; border: 1px solid; background-color: red;}
    div {background-color: orange;}
    div:nth-child(2) {background-color: red !important;}
    
  </style>
</head>
<body>
    <!--
      사용자의 중요 스타일 (고대비)
      개발자의 중요 스타일 (important)
      개발자의 일반 스타일
        - 인라인 > 아이디 > 클래스 > 태그
      사용자의 일반 스타일
      브라우저 기본 스타일
      -->
      <div class="cls"></div>
      <div style="background-color: black;"></div>
      <div></div>
      <div></div>
</body>
</html>

 

5. 선택자

5-2 ~ 5-11 예제

 

6. font-size (활자 크기) 스타일

  - css에서 폰트사이즈를 바꿀 때 단위를 무조건 써줘야함

  - 기본단위 px

 

 6-1) 절대크기

  - 알아둘만한거 없음

 

 6-2) 상대크기

  - %, em

 

 6-3) 픽셀로 글꼴 크기 설정

  - 

 

 6-4) em으로 글꼴 크기 설정

  - 1em의 기본 크기는 16px

 6-5) %

 

7. color

 - 컴퓨터의 컬러는 빛의 3원색 RGB컬러를 사용함

 - 빨강 256가지의 색상을 표현함

 - 녹색 256가지의 색상을 표현함

 - 파랑 256가지의 색상을 표현함

  <style>
    h1 {color: #00ff00;}
    h2 {color: green;}
    h3 {color: #a5a;}
    h4 {color: rgb(255, 0, 0);}
    h4 {color: rgba(255, 0, 0, .5);}
    .box {width: 100px; height: 100px; background-color: rgba(255, 0, 0, .5);}
    .box2 {position: relative; top: -50px; left: 50px;}
    .box1 {background-color: #0000ff7f;}
  </style>
  <h1>Hello Java</h1>
  <h2>Hello Java</h2>
  <h3>Hello Java</h3>
  <h4>Hello Java</h4>
  <div class="box box1"></div>
  <div class="box box2"></div>
  <div class="box box1"></div>
  </body>
    h5 {color: hsl(hue, saturation, lightness);}

'HTML5, CSS3 > HTML5, CSS3' 카테고리의 다른 글

23-02-20 css3  (0) 2023.02.20
23-02-17 CSS3  (0) 2023.02.17
23-02-15 HTML5  (0) 2023.02.15
23-02-14 HTML5, CSS3  (0) 2023.02.14
23-02-13 html5, css3  (0) 2023.02.13