Deeb
디비의 DB
Deeb
전체 방문자
오늘
어제
  • 분류 전체보기 (243)
    • Frontend (63)
      • HTML & CSS (27)
      • JavaScript (17)
      • jQuery (8)
      • React (6)
    • Backend (98)
      • Java (19)
      • JDBC (2)
      • Servlet & JSP (13)
      • Spring (17)
      • Project (0)
      • 개발 공부 (11)
      • 문제 풀이 (8)
      • Algorithm (1)
      • DataBase (0)
      • Oracle (18)
      • Error (8)
    • Knou (1)
    • Review (14)
    • TIL (33)
    • 삽질기록 (8)
    • deebtionary (5)

블로그 메뉴

  • 홈
  • 태그
  • 방명록

공지사항

인기 글

태그

  • 한빛미디어
  • GIT
  • 서평단
  • 추천
  • 배열
  • 2학기
  • 방통대
  • 클래스
  • 후기
  • css
  • 공부
  • 방송대
  • For
  • 삭제
  • alter
  • 자바
  • 기초
  • CLASS
  • 정의
  • DBMS
  • HTML
  • 리액트
  • 다형성
  • 에러
  • DB
  • Java
  • js
  • 책
  • 정처기
  • 함수

최근 댓글

최근 글

티스토리

hELLO · Designed By 정상우.
Deeb

디비의 DB

반응형 단계별로 쉽게 접근해보기
Frontend/HTML & CSS

반응형 단계별로 쉽게 접근해보기

2022. 7. 3. 23:52

css를 하다보면 반응형 만들기가 쉽지 않다. css는 넘쳐나고 어떤 부분을 반응형으로 바꿔야한 고민되는데 조금 가볍게 접근하는 방법에 대해 알아보자!

 

반응형으로 바꾸는 순서

1. reset빼고 @media태그 안에 전부 ctrl + c, ctrl + v한다.

- reset 관련 속성을 제외하고 /* layout */부터 footer 영역까지 반응형이 필요한 부분 다 그대로 넣는다.

 

2. 길이나 크기를 조절하는 요소외에 나머지 지우기

3. font나 margin등 변경되는 부분들 수정하기

 

Tip!

되도록 반응형을 할 때 추가 property가 없게 만든다. 그래서 처음부터 단축 속성을 미리 써두면 좋다고한다.

property value만 바꿔주면 되기때문인데 property 하나하나 쓰면 property value 자체를 추가하거나 삭제해야되기에 유지보수에 안 좋다.

 

예시

font-size: 13px;
font-family: 'arial';

이렇게 두 개만 작성했다가 반응형 작업하던 중 font-weight을 추가해야한다면?
처음에는 없던 property가 반응형에서만 추가된것이니 찾는 과정이 번거로워진다.

그래서 단축 속성으로 쓰는게 좋다.
font: 500 3rem  "arial";

font: weight size / line-height  font-family 

 

 

기존 화면

 

태블릿 화면 & 모바일 화면

 

전체 영역을 감싸는 wrapper와 header 코드만 가져와서 보자.

/* layout */
.wrapper {
  width:960px; position:relative; margin:20px auto;    
  }
.cfix::after {display:block; content:''; clear:both};
#header section {margin-bottom:0px;}
section {margin-bottom:40px;}

/* header */
#header section>h1 {
  font:bold 3rem/1 "arial";
  text-align:center;
  background:yellow;
}

#header section>.sns {
  position:absolute; right:0px; top:0px;
}

#header section>.sns>li {
  float:left; margin-right:10px;
}
#header section>.sns>li:last-child {
  margin-right:0px;
}


#header .nav>li {
  float:left;
  width:15%;
  background:lightseagreen;
  margin-right:2%;
  text-align:center;
}
#header .nav>li:last-child {
  margin-right:0%;
}

 

태블릿 화면

@media screen and (max-width:960px) {

    /* layout */
    .wrapper {width: 100%; margin:0px auto 20px; }

    /* header */
    #header section>h1 {
      font:bold 3rem/1 "arial";
      background:lightcoral;
    }

    #header .nav>li {
      background:lightcyan;
    }
}

wrapper

- postion을 지워준 뒤에 width의 값을 바꿔준다.

 

header

-  text-align은 지우고 여기서는 색상의 변화를 위해 background의 값을 바꿨다.

- 여기서 font가 따로 쓰는것이 아니라 단축속성을 사용하였기에 수정할 때 유용하다.

 

 

모바일 화면

@media screen and (max-width:460px){

  /* header */
  #header section>h1 {
    background:darkolivegreen;
  }
  
  #header .nav>li {
    background:lightcyan;
    display: none;
  }
}

 

동기 비지님의 도움을 받아 작성한 내용입니다.

반응형
저작자표시 변경금지 (새창열림)

'Frontend > HTML & CSS' 카테고리의 다른 글

[CSS] 중앙정렬 하는법  (0) 2022.08.21
[CSS] height과 min-height 똑같아 보이는데 무슨 차이지?  (0) 2022.05.26
[CSS] 11 float + 실습 피드백  (0) 2022.04.26
[CSS] IR(Image Replacement) 기법, .blind & .screen_out  (0) 2022.04.12
[CSS] reset.css 그리고 common.css  (0) 2022.04.06
    'Frontend/HTML & CSS' 카테고리의 다른 글
    • [CSS] 중앙정렬 하는법
    • [CSS] height과 min-height 똑같아 보이는데 무슨 차이지?
    • [CSS] 11 float + 실습 피드백
    • [CSS] IR(Image Replacement) 기법, .blind & .screen_out
    Deeb
    Deeb

    티스토리툴바