FrontEnd

Chapter 09. 이미지와 그라데이션 효과로 배경 꾸미기

계란💕 2022. 4. 25. 10:03

1. 배경색과 배경 범위 지정하기

  1) 배경색을 지정하는 back-ground 속성

  - 배경색은 16진수나 rgb값 또는 색상 이름을 사용해서 지정한다.

  - 세밀하게 조절하려면 16진숫값을 사용한다. 

  - 투명도도 조절하려면 rgba표기법을 사용한다.

 

  2) 배경색의 적용 범위를 조절하는 background-clip 속성

  - 박스모델 관점에서 배경의 적용 범위를 조절할 수도 있다.

  - 속성값

    (1) border-box: (기본값) 박스 모델의 가장 외곽인 테두리까지 적용한다. 

    (2) padding-box: 박스모델에서 테두리를 뺀 패딩 범위까지 적용한다. 

    (3) content-box: 박스모델의 내용(컨텐츠) 부분에만 적용한다.

 

  Ex)

css
열기

  Note) 실행 결과

 

2. 배경 이미지 지정하기

  1) 웹 요소에 이미지를 넣는 background-image 속성

  - 기본형: background-image: url('이미지 파일 경로')

 

  2) 배경 이미지의 반복 방법을 지정하는 background-repeat 속성

    (1) repeat: 브라우저 화면에 가득찰 때 까지, 가로 세로 모두 반복

    (2) repeat-x: 브라우저 화면 너비에 가득찰 때까지 가로로 반복한다.

 

    (3) repeat-y: 브라우저 화면 높이에 가득찰 때까지 세로로 반복한다.

    (4) no-repeat: 한 번만 표기하고 반복하지 않는다.

  

  3) 배경 이미지의 위치를 조잘하는 background-position 속성

  - 배경 이미지의 수평 위치 또는 수직 위치의 값을 지정할 수 있다. 

  - 기본형: background-position: <수평위치> <수직위치>

    -> 수평 위치: left | center | right | <백분율> | <길이 값> 중에서 키워드를 선택한다. 

    -> 수직 위치: top | center | bottom | <백분율> | <길이 값>

  - 백분율: 요소가 있는 해당 위치에 배경 이미지의 위치를 백분율로 계산하여 맞춘다. 

 

  Ex) 불릿 대신 배경 이미지 사용하기

  - 목록의 불릿을 없앤 후, 그자리에 배경 이미지를 넣고 위치는 center로 지정한다.

css
열기

  Note) 실행 결과

 

                                                                                                                                                                       

  4) 배경이미지의 적용 범위를 조절하는 background-origin 속성

  - 속성값

    -> content-box: 박스 모델에서 내용 부분에만 배경 이미지를 표기한다. (기본값)

    -> paddding-box: 박스 모델에서 패딩까지 배경 이미지를 표시한다.

    -> border-box: 박스 모델에서 테두리까지 배경 이미지를 표시한다. 

 

 

  5) 배경 이미지를 고정하는 background-attachment 속성

  - 속성값

    -> scroll: 화면을 스크롤할 때, 이미지도 함께 스크롤 (기본값)

    -> fixed: 스크롤하더라도 이미지는 고정

 

 

  Ex) 배경 이미지 배치하고 고정하기

css
열기

  Note) 실행 결과

 

  6) background 속성하나로 배경 이미지 제어하기

  ex) background: url('image/bg4.png') no-repeat center bottom fixed;

 

 

  7) 배경 이미지 크기를 조절하는 bacjground-size 속성

  - 속성값이 하나일 때는 너비로 인식하고 높이는 원래 이미지의 너비와 높이 비율에 따라 자동 계산한다.

  - 속성값

    -> auto: 원래 배경 이미지만큼 표시한다. (기본값)

    -> contain: 요소 안에 배경 이미지가 다 들어오도록 이미지를 확대, 축소한다.

    -> cover: 배경 이미지로 요소를 모두 덮도록 이미지를 확대, 축소한다.

    -> <크기>: 이미지의 너비와 높이를 지정한다. 하나만 주어지면 너빗값으로 인식한다.

  - <백분율>: 배경 이미지가 들어갈 요소의 크기를 기준으로 값을 백분율로 지정하고 그 크기에 맞도록 배경 이미지 확대, 축소한다.

 

  Ex) 배경 이미지 크기 조절하기 

css
열기

  Note) 실행 결과

 

 

  Ex) 문서 전체에 배경 이미지 넣기

  - 웹 브라우저 창의 크기를 바꿔도 배경 이미지는 화면에 가득찬 상태로 표시된다. 

  - 글자색을 흰색 #fff로 지정하고 text-shadow를 검은색으로 지정한다. 

 

  Note) 실행 결과

 

 

3. 그라데이션 효과로 배경 꾸미기

 

  1) 선형 그라데이션

  Def) 선형 그라데이션: 색상이 수직, 수평 또는 대각선 방향으로 일정하게 변하는 것을 말한다. 

  - linear-gradient 함수를 이용한다.

  - 기본형: linear-gradient(to <방향> 또는 <각도>, <색상 중지점>, [<색상 중지점>, ...]);

  - 방향을 나타내는 예약어를 최대 2개까지 사용 가능하다.

  - 수직방향: top / bottom , 수평방향: left / right

  - 위치나 각도 옵션을 생략하면 "to bottom"으로 인식한다.

 

 

  Ex) 방향을 이용해 선형 그라데이션만들기

  - 오른쪽 대각선 아래로 내려가는 방향으로 그라데이션이 생긴다. 

css
열기

  Note) 실행 결과

 

 

  Ex) 각도를 사용해 선형 그라데이션만들기

  - 선형 그라데이션 색상이 바뀌는 방향을 알려준다.

  - 각도는 그라데이션이 끝나는 부분이고 값은 deg로 표기한다. 

  - 맨 윗부분이 0deg이고 시계 방향으로 회전하면서 90, 180deg가 된다. 

css
열기

  Note) 실행 결과

 

 

  Ex) 선형 그라데이션의 색상 중지점(color-stop) 지정하기

  - 2가지 색 이상의 선형 그라데이션을 만들려면 색상이 바뀌는 부분을 지정해줘야한다.

  - 그라데이션이 바뀌는 색을 색상 중지점이라고 한다. 

  - 쉼표로 색상을 구분하는데 색상만 지정할 수도 있고 색상과 함께 중지점의 위치고 함께 지정할 수 있다. 

  - 예제를 보면 시작 색상과 끝 색상을 파란색으로 하고 시작 위치에서 30% 되는 지점에 흰색을 두어 위->아래로 부드럽게 연결한다. 

css
열기

  Note) 실행 결과

 

 

  Ex) 원형 그라데이션의 모양 지정하기

  - 원 또는 타원의 중심에서부터 동심원을 그리며 바깥 방향으로 색상이 바뀐다. 

  - 색상이 바뀌기 시작하는 원의 중심과 크기를 지정하고 그라데이션의 모양을 선택한다. 

  - 기본형: radial-gradient(<모양> <크기> at <위치>, <색상 중지점>, [<색상 중지점>, ...] )

  - 모양을 따로 지정하지 않으면 타원형으로 지정한다.

    -> 모양: 원형(circle), 타원형(ellipse)

  - 원형 그라데이션의 크기 속성값

    -> closest-side: 그라데이션의 가장 자리가 그라데이션 중심에서 가장 가까운 요소의 측면에 닿을 때까지 그린다.

    -> closest-corner: 그라데이션 가장 자리가 중심에서 가장 가까운 요소의 코너에 닿도록 그린다.

    -> fartest-side: 그라데이션 가장자리가 그라데이션 중심에서 가장 멀리 떨어져 있는 측면에 닿을 때까지 그린다.

    -> farthest-corner: 그라데이션의 가장자리가 그라데이션의 중심에서 가장 멀리 떨어져 있는 코너에 닿도록 한다.

 

css
열기

 Note) 실행 결과

 

 

  Ex) 위치 키워드를 사용해 원형 그라데이션 만들기

  - at키워드와 지정하면 그라데이션이 시작하는 원의 중심을 다르게 나타낼 수 있다.

  - 속성값은 키워드 또는 백불율을 이용한다. 

  - 속성값을 생략하면 가로 세로 모두 중앙인 center로 인식한다. 

  - 다음 그림은 20% 20% 위치에서 흰색 -> 파란색으로 변하는 원형 그라데이션을 만든다.

css
열기

  Note) 실행 결과

 

 

  Ex) 원형 그라데이션의 색상 중지점 지정하기

  - 선형 그라데이션 철럼 원형 그라데이션에서도 색상이 바뀌는 부분을 색상 중지점이라고 한다.

  - 그라데이션 중앙에서부터 노란색, 흰색을 거쳐 주황색으로 끝나는 원형 그라데이션이다. 

  - 모양을 지정하지 않았기 때문에 타원형으로 표시된다. 

css
열기

  Note) 실행 결과

 

 

  Ex) 그라데이션 반복하기

  - repeating-linear-gradient: 선형 그라데이션 반복

  - repeating-radial-gradient: 원형그라데이션을 반복한다. 

  - 다음 그림은 노 -> 빨 선형그라데이션, 흰->회 원형 그라데이션을 반복해서 나타낸다.

  - 선형 그라데이션을 반복하면 노란색 부터 빨간색까지 부드럽게 섞여 표시되지만, 다시 노란색이 시작하는 부분은 

    -> 이전 빨간색과 노란색이 겹쳐 주황색처럼 표시된다. 

    -> 따라서 색상 중지점의 위치를 적절하게 표시해야한다.

    ->시작 색상과 끝 색상을 명확히 구분해줘야 중간에 섞이지 않는다. 

 

css
열기

   Note) 실행 결과

 

 

  Ex) 그라데이션을 사용한 패턴 만들기

  - 이전 예제와 다르게 그라데이션의 시작 색상과 끝 색상을 명확히 지정하여 패턴을 만든다.

css
열기

  Note) 실행 결과

 

 

  Ex) 마무리 문제 1)

  - 배경 이미지는 왼쪽 아래에 고정시키고 반복되도록 한다.  

  - 텍스트 상자의 배경은 회색으로 설정한다. 

 

  Note) 실행 결과

 

  Ex) 마무리 문제 2)

  - container요소의 배경색을 검정으로 글자색은 흰색으로 변경한다. 

css
열기

  Note) 실행 결과

 

 

  Ex) 마무리 문제 3)

  - 문서 전체의 배경색 #02233b로 지정한다.

  - container의 배경색은 흰색

  - 배경이미지

    -> background: #fff url('images/mic.png') no-repeat right bottom;  

 

  Note) 실행 결과