opacity
: 투명도 지정font-size
: 글자 크기font-weight
: 글자 두께 (가중치)font-style
: 글자 기울기line-height
: 한 줄의 높이font-family
: 글꼴을 여러 개로 후보 지정 (글꼴 계열 설정 필수)color
: 글자의 색상text-align
: 문자의 정렬 방식text-decoration
: 문자의 장식 (밑줄, 중앙선 등)text-indent
: 첫 줄의 들여쓰기 기능 (음수 가능)background-color
: 요소의 배경 색상background-image
: 요소의 이미지 삽입 url("경로")
가 값background-repeat
: 요소의 배경 이미지 반복 제어background-position
: 요소의 배경 이미지 위치 (단위, 방향)background-size
: 요소의 배경 이미지 크기background-attachment
: 요소의 배경 이미지 스크롤 특성position
: 요소의 위치 지정 기준position: relative
요소 자신을 기준position: absolute
위치 상 부모 요소를 기준(display: block
)position: fixed
뷰포트를 기준 (display: block
)position
속성 값이 있을 경우 위에 쌓인다.z-index
속성의 숫자가 높으면 위에 쌓임.display: flex
→ 수평 정렬 (Flex Container 정의)display: inline-flex
→ inline-flex container 정의flex-direction
주 축 설정row
행 축 ( 좌 → 우)row-reverse
행 축 (우 → 좌)flex-wrap
: Flex Items 묶음 여부nowrap
묶음 없음wrap
묶음align-items
: 교차 축의 한 줄 정렬stretch
교차 축으로 늘림flex-start
, end
, center
transition
: 속성명 지속시간 타이밍함수 대기시간
;transform
:translate
translateX
translateY
scale
rotate
rotateX
rotateY
perspective
perspecitve
속성 : 하위 요소 관찰하는 원근 거리 지정backface-visibility
: 뒷면 숨김 여부Challenging (학습하며 어려웠던 점)
변환과 전환에 대해 제대로 학습해본 적이 없어 어려웠다.
스타벅스와 오버워치 예제를 보니 사용할 요소가 충분히 익혀두는 것이 좋겠다고 생각했다.
이동(translate)
요소를 수평 또는 수직으로 이동시킨다.
이동 거리는 x축 또는 y축의 값으로 지정할 수 있으며, 각 축의 이동 거리를 동시에 지정할 수도 있다.
transform: translateX(50px);
transform: translateY(50px);
transform: translate(50px, 50px);
회전(rotate)
요소를 지정한 각도만큼 회전시킨다.
각도의 단위는 도(deg)이며, 양수와 음수를 사용하여 시계 방향 또는 반시계 방향으로 회전시킬 수 있다.
transform: scale(1.5);
transform: scale(0.5);
transform: scale(2, 0.5);
확대/축소(scale)
요소를 지정한 배율만큼 확대 또는 축소시킨다.
값이 1보다 작을 경우 축소되고, 1보다 클 경우 확대된다.
transform: scale(1.5);
transform: scale(0.5);
transform: scale(2, 0.5);
비틀기(skew)
요소를 지정한 각도만큼 비틀어서 변형시킨다.
값이 양수이면 시계 방향으로, 음수이면 반시계 방향으로 비틀어진다.
transform: skewX(45deg);
transform: skewY(-30deg);
transform: skew(45deg, -30deg);
회전(rotateX, rotateY)
요소를 x축 또는 y축을 기준으로 회전한다.
rotateX
는 x축을 기준으로 회전하며, rotateY
는 y축을 기준으로 회전한다.
transform: rotateX(30deg);
transform: rotateY(60deg);
**원근(perspective)**
3D 요소를 2D 평면 상에 그릴 때 원근 효과를 부여한다.
perspective
는 transform
의 함수로 사용될 수 있고 속성으로 사용될 수도 있다.
차이는 원근 효과가 적용되는 대상이 다르다는 점이다.
perspective
속성을 지정하는 방법.parent {
perspective: 500px;
}
.child {
transform: rotateX(30deg);
}
perspective
속성을 부모 요소에 지정하면, 자식 요소들에게 원근 효과가 적용된다.transform
속성을 사용하여 3D 변환 효과를 주는 것이 좋다..parent {
}
.child {
transform: perspective(500px) rotateX(30deg);
}
transform
속성의 perspective
함수를 사용하면, 해당 요소와 그 자식 요소들에게만 원근 효과를 주게 된다. 이 방법에서는 부모 요소에 perspective
속성을 따로 지정하지 않아도 된다.**뒷면 숨김(backface-visibility)**
3D 요소를 회전 또는 기울인 경우 뒷면이 보이는 경우가 생길 수 있다.
backface-visibility
를 사용하여 뒷면을 숨길 수 있다.
visible
은 뒷면을 보이게 하고, hidden
은 뒷면을 숨긴다.
backface-visibility: hidden;