댓글 목록

HTML 반응형디자인

페이지 정보

작성자 운영자 작성일 17-10-29 16:11 조회 1,460 댓글 0

동영상 강좌는 유튜브 채널 '웹학교'를 이용하시기 바랍니다.

동영상 강좌보기



반응형 웹디자인이란?

반응형 웹디자인은 웹페이지를 모든 장치(데스크톱, 테블릿, 휴대전화)에서 모두 잘 보이게 합니다.

반응형 웹디자인은 HTML 및 CSS를 사용하여 화면의 모양이 잘 보이도록 내용의 크기를 조정, 숨기기, 축소, 확대 또는 이동하는 방법입니다.


뷰포트(viewport) 설정하기

반응형 웹페이지를 만들 때 모든 웹페이지에 다음 <meta>요소를 추가합니다.

<meta name="viewport" content="width=device-width, initial-scale=1.0">

이렇게 하면 페이지의 뷰포트가 설정되어 브라우저에서 페이지의 크기 및 배율을 제어하는 방법에 대한 지침을 제공합니다.


반응형 이미지

반응형 이미지는 모든 브라우저 크기에 맞게 확장되는 이미지입니다.


width속성 사용

width속성을 100%로 설정하면 이미지가 반응하고 크기가 조정됩니다.

<img src="response.jpg" style="width:100%;">

위의 예에서 이미지의 크기는 원래 크기보다 커질 수 있습니다. 더 나은 해결책은 대부분의 경우 max-width속성을 대신 사용하는 것입니다.


max-width속성 사용

max-width속성을 100%로 설정하면 원본 크기보다 커야만 이미지가 축소됩니다.

<img src="response.jpg" style="max-width:100%;height:auto;">

브라우저 너비에 따라 다른 이미지 표시

HTML <picture>요소를 사용하면 브라우저 창 크기에 따라 서로 다른 이미지를 정의할 수 있습니다.

브라우저 창 크기를 조정하여 너비에 따라 이미지가 어떻게 달라지는지 확인하십시오.

<picture>
  <source srcset="smallflower.jpg" media="(max-width: 600px)">
  <source srcset="flowers.jpg" media="(max-width: 1500px)">
  <source srcset="flowers.jpg">
  <img src="smallflower.jpg" alt="꽃들">
</picture>

반응형 텍스트 크기

텍스트 크기는 "뷰포트 너비"를 의미하는 "vw"단위로 설정할 수 있습니다.

그렇게 하면 텍스트 크기가 브라우저 창의 크기를 따릅니다.

<h1 style="font-size:10vw">안녕하세요?</h1>

미디어 쿼리(Media query)

텍스트 및 이미지의 크기를 조정하는 것 외에도 반응형 웹페이지에서 미디어쿼리를 사용하는 것이 일반적입니다.

미디어 쿼리를 사용하면 브라우저 크기에 따라 완전히 다른 스타일을 정의할 수 있습니다.

<style>
.left, .right {
  float:left;
  width:20%; /*너비 20%, 기본값*/
}

.main {
  float:left;
  width:60%; /*너비 60%, 기본값*/
}

/*미디어 쿼리를 사용하여 800px에서 중단 점 추가:*/
@media (max-width:800px) {
  .left, .main, .right {
    width:100%; /*너비 100%, 뷰포트가 800픽셀 또는 그 이하일
 때*/
  }
}
</style>

프레임웍 - 부트스트랩

인기 있는 프레임웍은 부트스트랩(Bootstrap)이며 HTML, CSS 및 jQuery를 사용하여 반응형 웹페이지를 만듭니다.

<!DOCTYPE html>
<html lang="ko-KR">
<head>
  <title>Bootstrap 예제</title>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link rel="stylesheet" href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css">
  <script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
  <script src="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/js/bootstrap.min.js"></script>
</head>
<body>

<div class="container">
  <div class="jumbotron">
    <h1>첫번째 페이지</h1>
    <p>사이즈를 조정하면 반응형효과를 확인할 수 있습니다!</p> 
  </div>
  <div class="row">
    <div class="col-sm-4">
      <h3>열 1</h3>
      <p>아름다운 세상...</p>
      <p>한글은 과학적이고 아름답습니다...</p>
    </div>
    <div class="col-sm-4">
      <h3>열 2</h3>
      <p>아름다운 한강...</p>
      <p>한강은 크고 깨끗하며 아름답습니다...</p>
    </div>
    <div class="col-sm-4">
      <h3>열 3</h3>        
      <p>설악산...</p>
      <p>설악산은 높고 화려하며 빼어납니다...</p>
    </div>
  </div>
</div>

</body>
</html>



댓글목록 0

등록된 댓글이 없습니다.