text-shadow
속성의 이해
text-shadow
속성은
텍스트 문자에 그림자 효과를 적용하는 속성입니다.
- 이 속성의 특징 및 구현 방법,
- 특히 여러 개를 사용하는 방법에 대해 다루겠습니다.
- 그리고, 다양한 예제를 통해
text-shadow
를 효과적으로 활용하는 방법을 살펴보겠습니다.
text-shadow
속성의 형식은 다음과 같습니다.
형식 구문
값
none |
초깃값임.
그림자 효과가 없습니다. |
---|---|
<color> |
옵션.
그림자 색상 값입니다. 초깃값은 currentcolor (현재 글자색)입니다.
속성 값의 맨 앞이나 맨 뒤에 지정할 수 있습니다. |
<offset-x> <offset-y> |
필수.
이 길이 값들은 텍스트로부터 그림자의 거리를 지정합니다.
<offset-x> 과 <offset-y> 는 띄어 쓰기로 구분하며, 이 사이에는 <color> 나 <blur-radius> 가 올 수 없습니다. 이 두 길이 값에는 % 단위의 길이 값을 사용할 수 없습니다. |
<blur-radius> |
옵션.
흐림 효과를 지정합니다. 크기의 기준은 흐림 효과를 원의 반지름으로 측정하며, 값이 높을수록 흐림 효과가 커집니다. 즉, 그림자가 더 넓어지고 가벼워 집니다. 음수 값이나 % 단위의 길이 값을 사용할 수 없습니다.
초깃값은 0 입니다.
이 값은 반드시 <offset-y> 바로 뒤에서 지정해야 합니다. |
구문
형식 정의
초깃값 | none |
---|---|
길이 값에 퍼센트(% ) 사용 |
해당사항 없음 |
적용 요소 | 모든 요소 |
상속 | 예 |
애니메이션 | 예 |
text-shadow
속성의 특징
text-shadow
속성은 다음과 같은 특징이 있습니다.
box-shadow
와는 달리 그림자 모양이 잘리지 않습니다.box-shadow
와 마찬가지로 레이아웃에 영향을 주지 않습니다.text-decoration
에 그림자 효과를 줍니다.text-emphasis
에 그림자 효과를 줍니다.
이 네 가지 특징에 대해 자세히 살펴보겠습니다.
box-shadow
와는 달리 그림자 모양이 잘리지 않습니다.
box-shadow
는 요소 박스의 모양으로 그림자가 잘리지만, text-shadow
는 그림자 모양으로 잘리지 않으며, 텍스트가 투명하거나 부분적으로 투명한 경우 비쳐 보일 수 있습니다.
다음의 구현 예제으로 살펴 보겠습니다.
위 구현 예제를 보면 요소 박스를 투명으로 지정하여 비쳐 보인 box-shadow
의 그림자 모양이 박스의 모양으로 잘려 있는 것을 알 수 있습니다. 하지만, 다음의 구현 예제를 보면 text-shadow
는 그림자 모양으로 잘리지 않으며, 텍스트가 투명하거나 부분적으로 투명한 경우 비쳐 보이는 것을 볼 수 있습니다.
텍스트
box-shadow
와 마찬가지로 레이아웃에 영향을 주지 않습니다.
box-shadow
나 text-shadow
는 그림자가 커서 주변 요소에 닿거나 넘치더라도 레이아웃에 영향을 주지 않습니다. 이는 오버플로(overflow, 경계를 넘어섬)하러다도 스크롤에 영향을 주지 않습니다.
위 구현 예제를 보면 .box-2
의 box-shadow
가 위에 있는 .box-1
를 넘처서 구현되었지만 .box-1
이나 .box-2
가 밀리거나 벌어지는 등의 현상이 발생하지 않습니다. box-shadow
는 주변의 레이아웃에 영향을 주지 않습니다.
아래의 구현 예제에서도 text-shadow
가 box-shadow
와 마찬가지로 주변의 레이아웃에 영향을 주지 않는 것을 보여줍니다.
text-decoration
에 그림자 효과를 줍니다.
text-shadow
는 text-decoration
에 영향을 줍니다.
텍스트
위 구현 예제를 보면 텍스트에 text-decoration: underline;
을 지정했을 경우 text-shadow
로 그림자 효과를 주었을 때 underline
에도 그림자 효과가 적용되는 것을 알 수 있습니다. 이것은 모든 text-decoration-style
의 값에서도 동일하게 적용됩니다.
text-emphasis
에 그림자 효과를 줍니다.
text-shadow
는 text-emphasis
에 영향을 줍니다.
텍스트
위 구현 예제를 보면 텍스트에 text-emphasis: dot;
을 지정했을 경우 text-shadow
로 그림자 효과를 주었을 때 underline
에도 그림자 효과가 적용되는 것을 알 수 있습니다. 이것은 모든 text-emphasis-style
의 값에서도 동일하게 적용됩니다.
text-shadow
로 여러 개의 그림자 효과 주기
text-shadow
속성으로 여러 개의 그림자 효과를 주려면 값을 콤마(,
)로 구분해서 추가할 수 있습니다.
그림자 효과는 순서대로 앞에서 뒤로 적용되며, 첫 번째 그림자가 맨 위에 옵니다.
가
위 구현 예제를 보면 그림자 효과가 순서대로 red, green, blue로 앞에서 뒤로 적용되며, 첫 번째 그림자인 red가 맨 위에 옵니다.
브라우저 호환성
속성 |
데스크탑 Chrome
|
데스크탑데스크탑 Edge
|
데스크탑 Firefox
|
Safari
|
---|---|---|---|---|
text-shadow
|
2 | 12 | 3.5 | 1.1 |
명세서
명세서 사양 | |
---|---|
Property
|
CSS Text Decoration Module Level 3 #text-shadow-property |