2021년 8월
#
1. @supports- 주어진 하나 이상의 CSS 기능을 브라우저가 지원하는지에 따라
다른 스타일 선언을 할 수 있는 방법을 제공합니다.
#
선언 구문#
not 연산자#
함수 구문- 자식요소를 지원할 때 통과
and
연산자 ,or
연산자도 지원
#
2. CSS Scroll Snap- CSS Scroll snap 모듈을 사용하면
스크롤 동작을 정의하기 위한 JavaScript 사용을 줄일 수 있고, - 하드웨어 가속을 사용하기 때문에 웹 브라우저에서 원활한 동작과 성능 향상을 기대할 수 있다
- 웹사이트 스크롤이 어떠할지 정할 수 있다.
- scroll-snap-type 을 부모요소에주고
- scroll-snap-align 을 자식요소에 줌
mandatory 라는 속성은
- 가능한 경우 스크롤 작업이 완료되면 해당 지점에서 스냅됩니다.
#
3. :is Pseudo Selector적은 코드만으로 여러가지요소를 담을수 있게 해줌
- 이런 식의 많은 코드를
- 적은양의 코드로 바꿈
- 선택자도 가능
#
4. Flex Box gap- 아이템 사이에 간격을 두고싶을때 사용
- 단위는 em , % , calc() 등 .. 여러가지 사용가능
- row 와 column 의 간격을 따로 줄수 있다.
#
5. aspect-ratio- 요소의 aspect-ratio 즉 , 가로 세로 비율을 설정 할 수 있다.
#
6.position:sticky유저의 스크롤을 따라다니는 요소를 만들수 있음
원하는 요소에 position sticky 를 쓰고
정의된 높이가 있는 컨테이너 안에 그 요소를 넣으면됨
fixed 박스
는 뷰포트에 고정하지만
sticky 박스
는 scroll 박스(영역)에 고정
출처#
#
Basic Set up--key: value
- CSS 변수 선언
:root
- 간단히 이야기 하면 최상위 엘리먼트 HTML 을 뜻한다.
- 우선순위때문에 사용 , 전역 변수의 느낌
em 사용 이유
- 강의에선 , font-size를 이용해 변수처럼 사용하기위해
background-image: repeating-conic-gradient
- 반복되는 원뿔형 형태의 그라디언트 이미지 생성
#
Scene 의 관점 변화rotateX(90deg)
perspective
- 얇은 판을 깔아 원근법 사용, 멀리서 볼수 있게
perspective-origin: 50% calc(50% - 2em);
- 자신이 보는 위치를 정하는
transform-style: preserve-3d;
- 자식요소를 3D 공간에 배치
#
Cube 만들기- translate Z 로 면을 앞으로 빼서 , rotateY 로 6면채로 배치
- 바닥에 방사형 효과를 추가
- 면 안쪽에 그림자를 추가
- 공이 떨어질때 그림자 효과를 주기 위해 추가
#
Ball 만들기- 구의 위에서 부터 아래로 방사형 으로 그림
- Ball 의 그림자 엘리먼트 생성
#
Scene 의 회전.cube 에 preserve-3d 추가
@keyframe 을 사용하여 , 회전 추가 (360도)
- .ball 에 Revers 추가한 animation ,
- 마치 구 처럼 보인다.
#
ball 의 Bounceease-out : 전환 효과가 천천히 끝남
ease-in: 처음을 느리게
timing function , keyframes 를 사용하여 공의 운동 즉
에니메이션의 속도를 조절한다.ballShadow 는 opacity , scale 을 통하여 조절
링크를 따라가면 , 상자의 Bounce 까지 표현가능..