[css] gradient (radial-gradient)
지난 시간에 linear-gradient(선형 그레디언트)를 배웠습니다.
[css3] gradient (linear-gradient) 사용법
오늘은 반지름형 그라디언트 입니다. 이전 강좌를 미리 보고 오셔야 이해가 더 쉬울 거예요.
선형 그레디언트가 일직선의 그레이디언트를 만들었다면, 반지름형 그레디언트는 반지름이나
타원형, 원형 형태의 그레디언트를 만들 때 사용합니다.
radial gradients 반지름형 그레디언트
반지름형 그레디언트는 그레디언트 중앙을 축으로 반지름을 그립니다.
그레디언트를 만들려먼 최소 두 가지 색상을 지정해야 합니다.
[색상 선택] color-stop
색상 지정은 linear-gradient와 동일한 방식으로 합니다.
색상의 시작점과 끝점 2개는 필수로 지정하고, 중간에 선택적으로 여러 색상을 넣을 수 있어요.
색상은 영문 색상 이름, rgba, 16진수값 다양하게 지정할 수 있어요.
색상점 위치도 같이 설정할 수 있어요 (%나 길이값 가능)
0%, 0는 그레디언트 중앙
100%는 그레디언트 끝지점
그 사이의 백분율은 그레디언트 선에 선형적으로 위치됨.
▶예 1
▶예 2
#radial{
background: radial-gradient(rgba(234,237,242,1) 0%, rgba(19,30,46,1) 61%, rgba(19,30,46,1) 100%);
}
[모양]
반지름형 그레디언트의 모양은 기본값이 타원형이며, 타원형과 원형 두 가지 값이 있습니다.
ellipse | circle
ellipse 타원
circle 원형
▶예
background: radial-gradient(green 5%, blue 25%, white 50%);
}
#radial2{
background: radial-gradient(circle, green 5%, blue 25%, white 50%);
}
▶실행화면
[위치]
반지름이 시작하는 위치로, 기본값이 center입니다.
background-position 속성과 비슷하게 키워드나, 길이 값을 사용합니다.
background-position 속성(배경이미지 위치 지정)
길이값을 사용하면 수평이 먼저 오고 그 다음이 수직.
문법 at을 사용함
▶예
background: radial-gradient(at 30%, green 5%, blue 25%, white 50%);
}
수평이 30%, 수직이 생략되었으므로 center 임.
background: radial-gradient(at left top, green 5%, blue 25%, white 50%);
}
그레디언트가 왼쪽 상단에 위치함
background: radial-gradient(at 60% bottom, green 5%, blue 25%, white 50%);
}
수평이 60%, 수직이 아래
▶실행화면
[모양 크기]
그레디언트 끝 모양의 크기를 지정합니다.
closest-corner | closest-side | farthest-corner | farthest-side
closest-corner 끝 모앙이 그레디언트 중앙에서 가장 가까운 모서리로 흐려짐.
closest-side 끝 모양이 그레디언트 중앙에서 가장 가까운 변으로 흐려짐.
farthest-corner 기본값. 그레디언트 중앙에서 가장 먼 모서리로 흐려짐
farthest-side 그레디언트 중앙에서 가장 먼 변으로 흐려짐
▶예
#cc{background: radial-gradient(closest-corner, yellow 5%, green 25%, pink 50%);}
#cs{background: radial-gradient(closest-side, yellow 5%, green 25%, pink 50%);}
#fc{background: radial-gradient(farthest-corner, yellow 5%, green 25%, pink 50%);}
#fs{background: radial-gradient(farthest-side, yellow 5%, green 25%, pink 50%);}
▶실행화면
캡쳐한 화면이라 closest와 farthest가 눈에 띄게 차이가 나지 않지만
farthest가 원 모양이 바깥 쪽으로 좀 더 퍼져 나가는 모양입니다. 그래서 끝 부분도 조금 흐릿하구요..
▶ 브라우저 지원
접두어 버전: chrome 10.0+ / safari 5.1+은 -webkit-
firefox 3.6+ 은 -moz-
opera 11.6+은 -o-
▶사용 예
#radial{
background-color: green; /* fallback */
background: -webkit-radial-gradient(yellow, green, white); /* Safari 5.1~6.0 , chrome 10.0~25.0 */
background: -o-radial-gradient(yellow, green, white); /* Opera 11.6 ~ 12.0 */
background: -moz-radial-gradient(yellow, green, white); /*Firefox 3.6 ~15 */
background: radial-gradient(yellow, green, white); /*표준 문법*/
}
모양 크기를 지정할 때는 문법이 조금 다릅니다
#radial{
background: -webkit-radial-gradient(60% 40%, closest-side,yellow, green, white);/* Safari 5.1+, chrome 10.0+ */
background: -o-radial-gradient(60% 40%, closest-side,yellow, green, white);/* Opera 11.6 ~ 12.0 */
background: -moz-radial-gradient(60% 40%, closest-side,yellow, green, white);/*Firefox 3.6 ~15 */
background: radial-gradient(closest-side at 60% 40%,yellow, green, white);/*표준 문법*/
}
복잡하신 분은, 그레디언트 생성기를 이용하시면 될 것 같아요.
http://www.cssmatic.com/gradient-generator
http://www.w3schools.com/Css/css3_gradients.asp
http://css-tricks.com/css3-gradients/
https://developer.mozilla.org/en-US/docs/Web/CSS/radial-gradient
위 사이트도 참조하시면 도움 됩니다.
'css' 카테고리의 다른 글
[css] 미디어 쿼리, @media query 이해하기 (8) | 2015.02.03 |
---|---|
[css3] repeating gradient (반복형 그레디언트) (0) | 2015.01.29 |
[css3] gradient (linear-gradient) 사용법 (1) | 2015.01.27 |
[CSS] @viewport rule (2) | 2015.01.15 |
IE6,7,8에서 css3 속성(border-radius, box-shadow 등) 적용하기 (0) | 2014.12.22 |
댓글