css 선언

선언방법

  • inline
    • 제일 우선으로 적용한다.
    • 우선으로 적용된다는게 덮어지는게 아니다. 다른 선언이 있어도 inline이 적용된다는 의미
    • <p style="color:red;">러러러</p>
  • internal
    • style 태그안에 작성
    • <style></style>
  • external
    • .css.파일로 관리
    • 링크로 추가
    • <link rel="stylesheet" href="style.css">
  • 우선순위
    • inline은 별도의 우선순위로 적용
    • internal, external을 동등하여 겹치면 나중에 선언된게 적용된다.

상속

  • 상위 엘리먼트에 적용된 css는 하위 엘리먼트에도 적용된다.
    • <div class="a"><div class="b"></div></div>
  • box-model이라고 불리는 속성들(width, height, margin, padding, border)은 상속되지 않는다.

우선순위

  • inline이냐 internal,external이냐
    • inline으로 적용
  • 작성순서
    • 같은 선언이 있다면 마지막에 작성된것이 적용
    • span{color:red} span{color:blue}이면 blue로 적용
  • 구체적인게 적용
    • div>span{color:red}span{color:blue}가 있을때
    • <div><span>글</span></div>이면 구체적으로 작성된 red로 스타일이 적요됩니다.
    • <span>만 있으면 당연히 blue가 적용
  • id-class-tag순으로 적용
    • id로 작성된게 제일 우선순위가 크다
    • <div id="a" class="b">글</div>
      • #a{red} .b{green} div{blue}이면 red로 적용된다.

단위

  • 1em은 16px(기본)로 16px기준으로 배율을 지정할수있다.
    • 2em은 32px, 1.5em은 24px이 된다.
  • em은 16px고정이 아니고 부모로부터 받은 fontsize를 기준으로한다.

css selector란?

  • html 요소를 tag, id, class, html속성을 통해 빠르게 찾아주는 방법

css지정방법

  • tag
    • tag이름은 그냥 tag이름을 해주면 모든 tag에 적용
  • id
    • id는 #을 앞에 붙여준다.
  • class
    • class이름은 .을 앞에 붙여준다.
div {
  color : red;
}
#id {
  color : red;
}
.classname {
  color : red;
}

css지정 활용

  • div.testname
    • div tag이면서 classname이 testname인것(and이다.)
  • h1, span, div { color : red }
    • 그룹지정
    • ,를 통해 같은 스타일을 동시에 지정 가능
  • #id span {color:red}
    • 자손요소
    • #id내의 모든 span에 적용한다는 의미
  • #id > span{color:red}
    • 바로아래의 하위엘리먼트만 적용
    • #id의 바로 붙어있는 span만 적용
  • #id > span:nth-child(2) { color : red }
    • n번째 자식 선택하여 적용
    • #id의 바로아래의 자식중 2번째 자식에 적용
  • #id > span:nth-of-type(2) { color : red }
    • 자식들중 span타입의 n번째 자식 선택하여 적용
    • #id의 바로아래의 자식중 2번째 span자식에 적용