20210512 HTML/CSS

NOAH·2021년 5월 12일
0

TIL

목록 보기
52/179
post-thumbnail

HTML

  • HTML tag 사이에 넣는 텍스트가 무언가가 된다 (title, image, 등등)
  • 브라우저는 아무의미가 없어도 이해하려한다
  • h1 = header no.1, h2 = header no.2 . . . h6까지 존재
  • 브라우저는 내가 만든 태그를 사용하지 못한다 (텍스트로 표현할 수는 있지만 원하는대로 작동은 안됨)

Tag attribute

  • a = anchor를 뜻함 (link를 떠올리면 됨) (추가적인 정보가 필요함)
  • attributes = 태그에 추가하는 정보
  • href = http reference라고 함 (anchor 태그에만 추가 가능)
  • target = 기본값은 self이고, _blank 입력 시 새 탭에서 링크가 열림
  • img = 다른 태그와 다르게 /로 닫는 태그가 없다 (자체 닫기 태그이기 때문)
  • src = img 안에 사진을 집어넣음 (img에서 작동)

Tag & Head

  • 같은 폴더에 이미지가 있을 경우 이미지 이름.확장자

  • 다른 폴더일 경우 폴더/이미지.확장자 (경로 표기 법)

  • 모든 HTML 문서는 로 시작

  • HTML 문서는 HEAD(웹사이트의 환경 설정), BODY(사용자가 볼 수 있는 내용)로 구성됨

  • title = 제목 설정

  • 브라우저 화면상에 보여질 내용들은 body에 있어야 함.

  • meta tag = 부가적인 요소 라는 뜻 (content, name attribute를 가짐)

  • charset = 한글 등 문자 표시하게 해줌

  • language = 사이트에 사용되는 언어 표기 (검색엔진에게 알려줌)

  • 다른 수많은 meta tag들이 있음

  • HEAD 태그는 보이지 않는 사이트 설정들을 바꿔준다!! (중요)

  • og:~~~ = 카카오톡에서 사용하는 정보들

TAG & ID

lable은 input과 함께 작동한다. (label이 input을 activate)
lable 태그에 for=""
input 태그에 id="" 에 완전 똑같은 벨류가 들어가야 함.

(커서 동시 선택하고 싶을 때는, option 키)

  • 핵심은 Id
    id는 body 안에 어떤 태그에든 넣을 수 있는 attribute임
    element당 하나의 id 만을 가질 수 있다 (고유식별자임, 중복된 id를 사용하면 doesn't work!)
    Why? CSS가 태그를 지정하여 꾸미기 위해서 ID가 필요하기 때문이다!
  • 'div'는 division의 약자로, 박스의 개념으로 생각하면 된다.
    요소가 옆으로 늘어나는 것이 아닌, 상하로 위치 시켜줄 수 있다.
    'header' 또한 같은 기능
  • 'footer'는 꼬릿말을 위한 태그
  • semantic이란 기능이 담겨 있지 않은 태그지만, 문서를 보기만해도 그 의미를 짐작할 수 있는 것이다. semantic한 코딩을 해야 확인도 간편하고, 팀 작업에도 중요하다.
  • 문단 text는 'p'로, 짧은 text는 'span'

CSS

  • CSS가 하는 일은 HTML 태그를 가리키는 일. (이 태그는 초록색이다. 이 가리키는 것 자체를 'selector'
  • CSS 작성에선 띄어쓰기를 하지 않는다.
  • font-size:20px; 과 같이, 속성 다음 콜론(:), 값 다음 세미콜론(;)으로 닫아줘야 한다.

속성이름:속성값;

  • 밑줄(_) 또는 슬래쉬(/)도 사용해선 안된다.
  • css 또한 어떤 값이든 쓸 수 있다. 하지만 속성에 맞는 값을 써야 브라우저에서 적용이 된다.
  • css 또한 모든 속성을 일일이 다 기억할 필요 없다. 기본적으로 어떻게 동작하는지만 기억하면 된다.

동작 원리
1. 태그를 지정
2. 원하는 속성값을 쓴다.

CASCADING MEANS

브라우저가 CSS를 읽을 때 위에서부터 순서대로 읽는다.
CSS를 직접 적는 것을 inline CSS, CSS 파일을 include 하는 것을 external CSS라고 한다.
만약 같은 selector를 가리키는 CSS가 여러개이면, 가장 마지막 스타일이 적용된다

Blocks & inline

div는 옆에 다른 div가 오지 않는다.
span은 옆에 다른 span이 올 수 있다.
link는 옆에 올 수 있다.
p는 옆에 올 수 없다.
옆에 다른 요소가 못 오는걸 block
올 수 있는걸 inline라고 한다. (in the same line)
inline의 대표적인 태그 span, link, img

MARGIN

block의 특징 (inline에는 없음)
inline block 서로 바꿀 수 있다. (display속성이라고 함)
어떤 요소가 inline 이면, 높이와 너비를 가질 수 없다.
block는 높이와 너비가 있다.
block의 특징 margin, padding, border
브라우저는 기본적으로 style 속성을 준다.

  • margin - 경계의 바깥에 있는 공간 (border보다 바깥)

방향 설정 없이 margin 하나를 주면 사방에 전부 다 적용된다.
두 개를 줄 경우 상하, 좌우 이다.
네 개를 줄 경우 시계방향 순으로 적용된다. (상 우 하 좌)

  • Collapsing margin 현상 (상하에서만 발생함)

body안에 div의 위 아래 마진이
body의 마진과 만나면 둘 중 큰 값의 마진으로 body에 적용된다가 맞는 것 같습니다.

PADDING

  • padding은 margin과 반대 개념이다.
  • padding은 box의 경계로부터 '안쪽'에 있는 공간이다.
  • 값의 개수에 따라 적용되는 방향은 margin과 동일하다.
  • 여러 div를 생성했을 때 'id'를 이용하여 div들을 구분할 수 있고, 각각 다른 속성을 적용시킬 수 있다.
  • CSS로 first div에 속성을 적용 시킬 땐, #first {}
  • 이는 body, span 등에서도 마찬가지다.
  • CSS 코드의 id명은 HTML 코드에서 썼던 id명과 같아야 한다.

BORDER

border는 box의 경계이다.
*는 전체를 뜻한다.
border : 굵기, 스타일, 색상 순이다.

Classes

padding은 span에 적용 된다.
margin은 inline 속성이므로(높이와 너비가 없다) 좌, 우에만 적용된다.
class는 여러개의 속성들이 공용으로 사용할 수 있는 스타일 형식이고,
여러 개의 속성에 같은 스타일을 적용하고 싶을 때 사용한다.
class는 .속성 으로 사용한다.
class는 여러 개를 가질 수 있다.

0개의 댓글