개발자가 JavaScript와 CSS를 혼합하여 웹 사이트를 사용자 정의할 수 있도록 새로운 CSS 속성이 개발되었으며 이제 인기 있는 브라우저를 지원합니다. 이들 중 일부는 아래에 나열되어 있습니다 -
포커스 내
요소 내에서 포커스 접근성을 해결하는 것을 목표로 합니다.
스크롤 스냅
이렇게 하면 기본 스크롤 및 감속이 가능합니다.
@media(-* 선호)
사용자의 디바이스 선호도에 따라 페이지의 UI와 UX를 동시에 설정할 수 있도록 도와줌으로써 더 높은 수준의 개인화를 가능하게 합니다.
* 밝기 수준, 강제 색상, 색 구성표, 대비, 움직임 감소 및 투명도 감소를 나타낼 수 있습니다.
위치:고정
뷰포트 내에서 UI를 유지합니다.
표준 레이아웃을 위한 논리적 속성
요소 내 및 요소 주위에 동적 방향 간격을 가질 수 있습니다.
갭 속성
이 속성은 이제 flexbox에 사용할 수 있습니다. 간격은 각 자식 요소에 고유한 간격이 있는 대신 간격을 소유하도록 컨테이너를 설정합니다.
백프롭 필터
요소 뒤에 스타일을 편리하게 설정합니다.
CSS 후디니 API
개발자가 사용자 정의 CSS를 읽고 이해하는 방법을 브라우저에 알릴 수 있는 기능을 개발자에게 제공하는 저수준 API입니다. CSS 개체 모델은 이제 개발자가 더 소비 가능한 방식으로 액세스할 수 있습니다. Layout API, Paint API, Parser API, Properties &Values API, AnimationWorklet, Typed OM 및 Font Metrics API가 이 아래에 있습니다.
종횡비
미디어 크기 유지
크기
하나의 속성에서 높이와 너비 설정
최소(), 최대() 및 클램프()
모든 CSS 속성에 대한 제약 조건 설정
디스플레이:외부 내부
더 잘 맞는 요소를 위한 두 가지 값 구문
목록 스타일 유형
목록에 사용자 정의 스타일 추가
CSS 모듈
이제 JavaScript를 사용하여 로컬 또는 원격 파일에서 특정 모듈을 요청할 수 있습니다.
CSS 영역
콘텐츠로 영역 채우기
CSS 하위 그리드
CSS 그리드에서 마이크로 레이아웃으로 마이크로 레이아웃을 만드는 데 도움이 됩니다.
예시
다음 예는 이러한 속성 중 일부를 보여줍니다 -
<!DOCTYPE html> <html> <head> <style> * { margin: 2%; text-align: center; } :is(header, main, footer) span:after { content: " Awesome!"; box-shadow: inset 0 0 8px lightgreen; font-size: 1.2em; font-family: Calibri; } :-webkit-any(header, div, section) span:after { content: " Awesome!"; box-shadow: inset 0 0 8px lightgreen; font-size: 1.2em; font-family: Calibri; } :-moz-any(header, div, section) span:after { content: " Awesome!"; box-shadow: inset 0 0 8px lightgreen; font-size: 1.2em; font-family: Calibri; } :matches(header, div, section) span:after { content: " Awesome!"; box-shadow: inset 0 0 8px lightgreen; font-size: 1.2em; font-family: Calibri; } </style> </head> <body> <header> <span>:is() operator is</span> </header> <div> <span>DEMO</span> <span>Alt + F4</span> <span>Enter</span> </div> <section> <span>Howzit?</span> </section> </body> </html>
출력
이것은 다음과 같은 결과를 생성합니다 -
예시
<html> <head> <style> #parent { margin: 8%; background-image: url("https://images.unsplash.com/photo-1611081352477- 9f1477ec09ae?crop=entropy&cs=tinysrgb&fit=crop&fm=jpg&h=400&ixlib=rb1.2.1&q=80&w=400"); padding: 2%; width: 200px; height: 200px; box-shadow: 0 0 20px rgba(100,0,40,0.8); } h2 { margin-top: 20vh; backdrop-filter: invert(1); } </style> </head> <body> <div id="parent"> <div> <h2>Watch this cool effect</h2> </div> </div> </body>
출력
이것은 다음과 같은 결과를 생성합니다 -