Chrome 124 베타

달리 명시되지 않는 한 다음 변경사항은 Android, ChromeOS, Linux, macOS, Windows용 최신 Chrome 베타 채널 버전에 적용됩니다. 제공된 링크 또는 ChromeStatus.com의 목록을 통해 여기에 나열된 기능에 대해 자세히 알아보세요. Chrome 124는 2024년 3월 20일 현재 베타 버전입니다. 데스크톱의 경우 Google.com에서, Android의 경우 Google Play 스토어에서 최신 버전을 다운로드할 수 있습니다.

CSS

이 출시 버전에서는 두 가지 새로운 CSS 기능이 추가되었습니다.

CSSImportRule.styleSheet

CSSImportRule.styleSheet가 null을 허용하도록 합니다. 연결된 CSS 스타일시트가 없는 경우 CSSImportRule의 styleSheet 속성은 null일 수 있습니다.

CSSKeyframesRule.length

CSSKeyframesRule의 length 속성을 노출합니다. 색인이 생성된 속성을 지원하는 인터페이스는 length라는 정수 유형 속성 이름을 정의해야 합니다.

HTML

이 출시 버전에는 두 가지 새로운 HTML 기능이 추가되었습니다.

writingsuggestions 속성

브라우저는 사용자가 웹의 다양한 수정 가능한 입력란에 입력할 때 작성 제안을 제공하기 시작했습니다. 이는 일반적으로 사용자에게 유용하지만, 개발자가 브라우저에서 제공하는 작성 지원 기능(예: 자체적으로 유사한 기능을 제공하는 확장 프로그램 또는 사이트)을 사용 중지해야 하는 경우도 있습니다.

새 속성 writingsuggestions에는 개발자가 브라우저에서 제공하는 쓰기 추천을 사용 설정하거나 사용 중지할 수 있는 true 또는 false 값이 있습니다. 요소의 속성 상태는 상위 요소에서 상속될 수도 있으므로 개발자는 요소별, 문서별 또는 하위 문서 규모로 이 기능을 제어할 수 있습니다.

키보드 포커스 가능 스크롤 컨테이너

순차 포커스 탐색을 사용하여 스크롤 컨테이너를 포커스 가능 상태로 만들어 접근성을 개선합니다. 이 변경 전에는 tabIndex가 명시적으로 0 이상으로 설정되지 않으면 Tab 키가 스크롤러에 포커스를 두지 않습니다.

기본적으로 스크롤러를 포커스 가능 상태로 만들면 마우스를 사용할 수 없거나 사용하지 않으려는 사용자가 키보드의 탭과 화살표 키를 사용하여 클립한 콘텐츠에 포커스를 둘 수 있습니다. 이 동작은 스크롤러에 키보드 포커스 가능 하위 요소가 포함되지 않은 경우에만 사용 설정됩니다.

이 기능은 Chrome 124부터 점진적으로 출시되며 Chrome 125부터 모든 사용자에게 제공됩니다. 키보드 포커스 가능 스크롤러에 대해 자세히 알아보세요.

Web API

Attribution Reporting API에 추가된 기능

파싱 실패 디버그 보고서를 지원하여 추가 디버깅 기능을 만들고, 선호하는 등록 플랫폼을 지정하는 필드를 지원하여 API 인체공학을 개선하고, 개인 정보 보호를 개선하는 기능이 Attribution Reporting API에 추가되었습니다.

문서 PIP 모드: 탭으로 돌아가기 버튼을 숨기는 옵션 추가

이렇게 하면 문서 PIP 모드 API에 새 매개변수(disallowReturnToOpener)가 추가됩니다. 이 매개변수를 true로 설정하면 사용자가 오프너 탭으로 돌아갈 수 있는 버튼을 PIP 모드 창에 표시해서는 안 된다는 힌트가 브라우저에 표시됩니다.

동영상 PIP 모드의 경우 오프너 탭으로 돌아가는 버튼이 항상 유용하지만(동영상 스트림을 오프너 탭의 동영상 요소로 되돌릴 수 있음) 문서 PIP 모드 환경에서는 항상 그런 것은 아닙니다. 이를 통해 개발자는 이러한 버튼이 사용 사례에 적합하지 않다고 판단할 때 사용자 환경을 더 세밀하게 제어할 수 있습니다.

문서 PIP 모드 문서에서 자세히 알아보세요.

문서 렌더링 차단

이 기능을 사용하면 작성자가 중요한 콘텐츠가 파싱될 때까지 문서 렌더링을 차단하여 모든 브라우저에서 일관된 첫 번째 페인트를 보장할 수 있습니다. 이 기능이 없으면 첫 번째 페인트의 상태는 브라우저마다 다를 수 있는 파서 생성 휴리스틱에 따라 달라집니다.

이는 첫 번째 프레임의 파싱된 DOM 상태가 생성된 전환을 크게 변경할 수 있는 뷰 전환에 특히 중요합니다.

이 기능은 링크 요소가 페이지의 다른 예상 요소를 참조할 수 있는 <link rel=expect href="#id"> 문법을 구현합니다. 그러면 예상 요소가 완전히 파싱될 때까지 렌더링이 차단됩니다. 이는 전체 문서를 렌더링 차단할 수 있는 HTML 속성의 이전 구현을 대체합니다.

속성 jitterBufferTarget개

jitterBufferTarget 속성을 사용하면 애플리케이션이 RTCRtpReceiver 지터 버퍼가 보유할 미디어의 목표 시간(밀리초)을 지정할 수 있습니다. 이는 사용자 에이전트가 수행하는 버퍼링 양에 영향을 미치며, 이는 재전송 및 패킷 손실 복구에 영향을 미칩니다. 타겟 값을 변경하면 애플리케이션이 재생 지연과 네트워크 지터로 인한 오디오 또는 동영상 프레임 소진 위험 간의 균형을 제어할 수 있습니다.

이벤트 pageswap개

pageswap 이벤트는 탐색이 이 문서를 새 문서로 대체할 때 문서의 창 객체에서 실행됩니다. 이 이벤트는 탐색에 관한 활성화 정보(새 문서의 경우 type, NavigationHistoryEntry)를 제공합니다.

탐색에 교차 문서 뷰 전환이 있는 경우 이전 문서의 상태를 캡처하기 전에 이벤트가 전달됩니다. 이를 통해 개발자는 탐색의 활성화 정보와 이전 문서의 현재 시각적 상태를 기반으로 전환을 위해 캡처된 이전 상태를 구성할 수 있습니다.

priority HTTP 요청 헤더

이렇게 하면 요청이 전송된 시점의 요청 우선순위 정보가 포함된 모든 HTTP 요청에 priority 요청 헤더가 추가됩니다.

RFC 9218(HTTP의 확장 가능한 우선순위 지정 스키마)은 원본(및 중개자)에 요청 우선순위를 알리는 데 사용할 priority HTTP 요청 헤더를 정의합니다. 또한 HTTP/2 및 HTTP/3이 동일한 우선순위 정보를 전달하기 위한 협상 프로세스와 프로토콜 수준 프레임을 정의합니다.

헤더는 리소스가 처음 요청되었을 때 리소스의 초기 우선순위만 알릴 수 있는 반면, 프레임 기반 메커니즘은 사후에 우선순위를 수정할 수 있습니다.

헤더는 원본 서버까지 엔드 투 엔드로 작동할 수 있으며(중개자가 인식하는 경우 원본이 우선순위를 재정의하는 메커니즘 제공) 프레임은 링크 수준에서 작동하는 것으로 제한됩니다.

이 기능은 헤더 기반 우선순위 지정 스키마를 지원하기 위한 것입니다.

혼합 콘텐츠를 완화하는 비공개 네트워크 액세스 권한

전역적으로 고유한 이름이 없어 TLS 인증서를 가져올 수 없는 로컬 네트워크의 기기에 연결하기 위해 이 기능은 fetch()에 이러한 기기와 통신하려는 개발자의 의도를 선언하는 새로운 옵션을 도입합니다. 여기에는 이 기능에 대한 각 사이트의 액세스를 제어하는 새로운 정책 제어 기능과 추가 메타데이터를 제공하는 서버의 실행 전 응답을 위한 새로운 헤더가 포함됩니다.

Sec-CH-UA-Form-Factors 클라이언트 힌트

이 힌트는 서버에 사용자 에이전트의 폼 팩터에 관한 정보를 제공합니다. 다음 폼 팩터 값 중 하나 이상을 반환합니다.

  • 데스크톱: 개인용 컴퓨터에서 실행되는 사용자 에이전트입니다.
  • 자동차: 차량에 삽입된 사용자 에이전트로, 사용자가 차량을 운전해야 할 수 있으며 세부적인 사항에 주의를 기울이지 못할 수 있습니다.
  • 모바일: 일반적으로 사용자가 휴대하는 소형 터치 지향 기기입니다.
  • 태블릿: '모바일'보다 크고 일반적으로 사용자가 휴대하지 않는 터치 지향 기기입니다.
  • XR: 사용자 주변 환경을 보강하거나 대체하는 몰입형 기기입니다.
  • EInk: 화면 업데이트가 느리고 색상 해상도가 제한적이거나 없는 기기입니다.
  • 시계: 사용자가 빠르게 볼 수 있도록 휴대하는 작은 화면(일반적으로 2인치 미만)의 휴대기기입니다.

setHTMLUnsafe 및 parseHTMLUnsafe

setHTMLUnsafe 및 parseHTMLUnsafe 메서드를 사용하면 JavaScript에서 선언적 섀도 DOM을 사용할 수 있습니다. 또한 이러한 메서드는 innerHTML 또는 DOMParser에 비해 HTML을 DOM으로 명령형으로 파싱하는 더 쉬운 방법을 제공합니다.

Shared Storage API 업데이트

이번 업데이트를 통해 iframe을 만들지 않고도 교차 출처 워크릿을 실행할 수 있습니다.

Streams API: ReadableStream 비동기 반복

Streams API는 데이터 스트림을 생성, 구성, 소비하기 위한 상호 운용 가능한 기본 요소를 제공합니다. 이 변경사항은 ReadableStream API에 비동기 반복 가능 프로토콜에 대한 지원을 추가하여 읽기 가능한 스트림을 await...of 루프의 소스로 사용할 수 있도록 합니다.

SVG context-fill 및 context-stroke

채우기 및 획 속성을 지정할 때 context-fill 및 context-stroke 키워드를 허용하는 기존 SVG 기능을 구현합니다. 이는 <use> 요소로 인스턴스화된 SVG 하위 트리와 <path> 요소의 marker 속성을 사용하여 인스턴스화된 <marker> 요소에만 영향을 미칩니다. 이러한 상황에서 context-fill 및 context-stroke는 <use> 또는 <path>의 fill 및 stroke 속성 값으로 확인됩니다.

WebGPU: ServiceWorker 및 SharedWorker 지원

ServiceWorker 및 SharedWorker 지원이 WebGPU에 추가되어 기존 WebGL 기능과 일치합니다.

서비스 워커는 WebGPU의 오프라인 기능과 백그라운드 프로세스를 지원합니다. 즉, 그래픽 집약적인 웹 애플리케이션이나 Chrome 확장 프로그램은 사용자가 페이지와 적극적으로 상호작용하지 않는 경우에도 리소스를 캐시하고 계산을 실행할 수 있습니다.

공유 작업자를 사용하면 여러 탭 또는 확장 프로그램 컨텍스트에서 WebGPU 리소스를 조정하고 공유할 수 있습니다. 이렇게 하면 성능이 더 원활해지고 사용자의 그래픽 하드웨어를 더 효율적으로 사용할 수 있습니다.

WebSocketStream API

WebSocket API는 RFC6455 WebSocket 프로토콜에 대한 JavaScript 인터페이스를 제공합니다. 지금까지는 잘 작동했지만 인체공학적 관점에서 어색하고 백프레셔라는 중요한 기능이 누락되었습니다. WebSocketStream API의 목적은 WHATWG Streams를 WebSocket API와 통합하여 이러한 결함을 해결하는 것입니다.

자세한 내용은 WebSocketStream: WebSocket API와 스트림 통합을 참고하세요.

TLS용 X25519Kyber768 키 캡슐화

Kyber768 양자 내성 키 계약 알고리즘을 배포하여 향후 양자 암호 분석으로부터 현재 Chrome TLS 트래픽을 보호합니다.

이는 IETF 표준을 기반으로 하는 하이브리드 X25519 및 Kyber768 키 계약입니다. 이 사양과 출시는 W3C의 범위를 벗어납니다. 이 키 계약은 TLS 암호화로 실행되며 사용자에게 투명하게 진행됩니다.

자세한 내용은 하이브리드 Kyber KEM으로 Chrome 트래픽 보호하기를 참고하세요.

진행 중인 오리진 트라이얼

Chrome 124에서는 다음과 같은 새로운 오리진 트라이얼을 선택할 수 있습니다.

변형 이벤트 지원 중단 기능 트라이얼

DOMSubtreeModified, DOMNodeInserted, DOMNodeRemoved, DOMNodeRemovedFromDocument, DOMNodeInsertedIntoDocument, DOMCharacterDataModified 등의 변형 이벤트는 페이지 성능을 저하시킬 수 있으며 웹에 새 기능을 추가하는 복잡성을 크게 증가시킬 수 있습니다. 이러한 API는 2011년에 사양에서 지원이 중단되었으며, 2012년에 훨씬 더 효과적인 Mutation Observer API로 대체되었습니다.

변형 이벤트 지원은 2024년 7월 30일경 Chrome 127부터 기본적으로 사용 중지됩니다. 사이트가 중단되지 않도록 이 날짜가 되기 전까지 코드를 Mutation Observer API로 이전해야 합니다. 시간이 더 필요한 경우 변형 이벤트 지원 중단 기능 트라이얼에 등록하여 특정 사이트에서 제한된 시간 동안 이 기능을 다시 사용 설정하세요. 2025년 3월 25일까지 Chrome 134에서 사용할 수 있습니다.

또는 MutationEventsEnabled 엔터프라이즈 정책도 Chrome 134를 통해 동일한 목적으로 사용할 수 있습니다.

변형 이벤트 지원 중단 기능 트라이얼에 등록합니다.

지원 중단 및 삭제

이 Chrome 버전에서는 다음과 같은 지원 중단 및 삭제가 도입됩니다. 예정된 지원 중단, 현재 지원 중단, 이전 삭제 목록은 ChromeStatus.com을 참고하세요.

이번 Chrome 출시 버전에서는 한 가지 기능이 삭제됩니다.

권한 및 권한 정책 'window-management'의 'window-placement' 별칭 삭제

권한 및 권한 정책 'window-management'의 'window-placement' 별칭을 삭제합니다. 이는 결국 'window-placement'를 지원 중단하고 삭제하여 문자열 이름을 바꾸기 위한 더 큰 노력의 일환입니다. 용어 변경은 Window Management API가 시간이 지남에 따라 발전함에 따라 설명자의 수명을 개선합니다.