게시일: 2024년 10월 16일
별도의 언급이 없는 한 다음 변경사항은 Android, ChromeOS, Linux, macOS, Windows용 최신 Chrome 베타 채널 출시에 적용됩니다. 제공된 링크 또는 ChromeStatus.com의 목록에서 여기에 나열된 기능에 관해 자세히 알아보세요. Chrome 131은 2024년 10월 16일부터 베타 버전입니다. 데스크톱의 경우 Google.com 또는 Android의 Google Play 스토어에서 최신 버전을 다운로드할 수 있습니다.
CSS
이 출시에서는 새로운 CSS 기능 8개를 추가합니다.
CSS 앵커 포지셔닝: anchor-scope
anchor-scope
속성을 사용하면 앵커 이름의 공개 범위를 지정된 하위 트리로 제한할 수 있습니다.
CSS font-variant-emoji
font-variant-emoji
CSS 속성은 색상 (이모티콘 스타일)과 단색 (텍스트 스타일) 이모티콘 글리프 간에 전환하는 방법을 제공합니다. 각 그림 이모티콘 코드 포인트 뒤에 그림 이모티콘 변형 선택기(특히 텍스트의 경우 U+FE0E, 그림 이모티콘의 경우 U+FE0F)를 추가하여 이 작업을 수행할 수도 있습니다.
CSS 강조 표시 상속
CSS 강조 표시 상속을 사용하면 CSS가 ::selection
및 ::highlight
와 같은 의사 클래스를 강조표시하며 요소 체인이 아닌 의사 강조 표시 체인을 통해 속성을 상속합니다. 그 결과 강조 표시의 속성 상속을 위한 더 직관적인 모델이 생성됩니다.
자세한 내용은 Igalia의 스테판 체니님이 작성한 CSS 선택 스타일 지정 상속 변경사항 블로그 게시물을 참고하세요.
<details>
및 <summary>
요소의 스타일 지정 구조 개선
<details>
및 <summary>
요소의 구조에 더 많은 CSS 스타일을 지원하여 이러한 요소를 웹에서 공개 위젯 또는 아코디언 위젯이 빌드되는 더 많은 경우에 사용할 수 있도록 합니다. 특히 이 변경사항은 이러한 요소에 디스플레이 속성을 설정하지 못하도록 하는 제한사항을 삭제하고 ::details-content
가상 요소를 추가하여 펼치고 접히는 부분의 컨테이너 스타일을 지정합니다.
@page
여백 상자
웹 문서를 인쇄하거나 PDF로 내보낼 때 페이지 여백 상자를 지원합니다.
@page
여백 상자를 사용하면 브라우저에서 생성된 기본 제공 머리글과 바닥글을 사용하는 대신 페이지의 여백 영역에 콘텐츠를 정의할 수 있습니다. 예를 들어 맞춤 머리글과 바닥글을 제공할 수 있습니다.
여백 상자는 CSS @page
규칙 내에서 at-규칙을 사용하여 정의됩니다. 여백 상자의 모양과 내용은 content
속성을 비롯한 at-rule 내의 CSS 속성으로 지정됩니다. 페이지 번호 지정을 위한 카운터도 지원됩니다. 이 사양은 두 가지 특수 카운터 이름을 정의합니다. 현재 페이지 번호에는 page
, 총 페이지 수는 pages
입니다.
@property가 <string>
문법을 지원함
등록된 맞춤 속성의 <string>
문법 구성요소 이름을 지원합니다.
상대 색상 문법에서 currentcolor 지원
CSS의 상대 색상 (from
키워드 사용)이 currentcolor
를 기본으로 사용하도록 허용합니다. 이렇게 하면 요소의 텍스트 색상을 기반으로 해당 요소의 테두리, 그림자 또는 배경에 보색을 설정할 수 있습니다.
이 기능에는 색상 함수가 currentcolor에 대한 종속 항목(예: color-mix(in srgb, rgb(from currentcolor r g b), white))
또는 rgb(from rgb(from currentcolor 1 g b) b g r)
)과 중첩된 사용 사례도 포함됩니다.
clip-path
, fill
, stroke
, marker-*
속성에 외부 SVG 리소스 지원
이 기능은 클립 경로, 마커, 페인트 서버('fill' 및 'stroke' 속성)의 외부 참조를 지원합니다. 예를 들면 다음과 같습니다.
clip-path: url("resources.svg#myPath")
Web API
Direct Sockets API
격리된 웹 앱이 네트워크 기기 및 시스템과 직접 전송 제어 프로토콜 (TCP) 및 사용자 데이터그램 프로토콜 (UDP) 통신을 설정하고 수신 연결을 리슨하고 수락할 수 있도록 허용합니다.
CSP 제한에서 Speculation-Rules 헤더 제외
CSP가 Speculation-Rules
헤더가 아닌 <script type=speculationrules>
에만 적용되도록 추측 규칙과 CSP 간의 통합을 업데이트합니다. CSP의 스크립트 정책은 HTML에 스크립트를 삽입하는 것을 방지하기 위한 것이며 CSP 위협 모델은 HTTP 헤더와 관련이 없습니다. 이렇게 하면 CDN 및 기타 에지 서버에서 추측 규칙을 더 쉽게 배포할 수 있습니다.
Storage Access API의 신뢰 신호로서 FedCM
이전 FedCM이 저장소 액세스 요청을 자동으로 승인할 수 있는 유효한 이유를 부여하도록 하여 FedCM과 Storage Access API를 조정합니다.
사용자가 신뢰 당사자 (RP)에서 서드 파티 ID 공급업체 (IdP)에 ID를 사용하는 권한을 부여하는 경우, 많은 IdP는 서드 파티 쿠키가 올바르고 안전하게 작동해야 합니다. 이 제안서에서는 Storage Access API (SAA) 권한 확인을 업데이트하여 스토리지 액세스 메시지에 의해 부여된 권한뿐만 아니라 FedCM 메시지에 의해 부여된 권한도 허용하도록 하여 비공개적이고 안전한 방식으로 이 요구사항을 충족하는 것을 목표로 합니다.
이 메커니즘의 주요 속성은 FedCM 권한 정책에 따라 RP가 명시적으로 허용하는 케이스로 부여를 제한하여 RP의 프레임별 제어를 적용하고 FedCM이 이미 부여한 기능 이상으로 IdP의 수동 감시를 방지하는 것입니다.
COOP 값 noopener-allow-popups
일부 출처에는 보안 요구사항 수준이 다른 여러 애플리케이션이 포함될 수 있습니다. 이러한 경우 한 애플리케이션에서 실행되는 스크립트가 다른 동일 출처 애플리케이션의 페이지를 열고 스크립트할 수 없도록 하는 것이 좋습니다.
이러한 경우 문서가 열려 있는 문서가 동일한 출처의 문서이더라도 열려 있는 문서가 문서를 스크립트할 수 없도록 하는 것이 좋습니다. noopener-allow-popups
Cross-Origin-Opener-Policy 값을 사용하면 문서에서 이러한 동작을 정의할 수 있습니다.
Private Aggregation API: Protected Audience 호출자의 기여도 한도를 100으로 늘림
현재 한도인 20회에서 Protected Audience 스크립트 실행기가 비공개 집계 보고서당 최대 100회의 기여를 할 수 있도록 지원합니다.
비공개 집계는 집계 가능한 단일 보고서에 삽입할 수 있는 히스토그램 기여 수를 제한하여 추가 기여가 누락됩니다. 공유 저장소 호출자는 다른 공유 저장소 작업을 호출하여 한도를 우회할 수 있습니다. 그러나 Protected Audience 호출자에게는 영구 저장소가 없으므로 입찰이 끝나면 초과 기여도가 사라집니다. API의 기여도가 동일한 개인 정보 보호 예산으로 제한되므로 이 변경사항은 개인 정보 보호에 중립적입니다.
패딩으로 인해 각 Protected Audience 보고서에는 더 큰 기여도 한도가 필요하지 않더라도 더 큰 페이로드가 포함됩니다. 이러한 더 많은 보고서로 인해 집계 서비스 운영 비용이 증가할 것으로 예상됩니다.
파서 완화 선택
이 변경사항을 통해 HTML 파서는 <option>
, <optgroup>
, <hr>
외에도 <select>
에서 추가 태그를 허용합니다.
이 변경사항은 맞춤설정 가능한 <select>
기능을 지원하지만, 별도로 적용할 수 있고 Chrome팀에서 의견을 구하고자 하는 호환성 위험이 있으므로 먼저 제공됩니다.
WebGPU: 클립 거리
정점 셰이더 출력에서 사용자 정의 클립 거리를 설정할 수 있는 선택적 GPU 기능 clip-distances
를 추가합니다. 이 기법은 많은 CAD 애플리케이션과 같이 사용자 정의 평면을 벗어난 장면의 모든 정점을 클립해야 하는 애플리케이션에 특히 유용합니다.
WebGPU: GPUCanvasContext getConfiguration()
구성 사전으로 GPUCanvasContext configure()
가 호출되면 GPUCanvasContext getConfiguration()
메서드를 사용하여 캔버스 컨텍스트 구성을 확인할 수 있습니다. GPU device
, format
, usage
, viewFormats
, colorSpace
, toneMapping
, alphaMode
구성원이 포함되어 있습니다.
문제 4828에서 논의된 바와 같이 웹 앱은 이를 사용하여 WebGPU에서 HDR 캔버스가 지원되는지 감지할 수 있습니다.
전용 작업자의 WebHID
전용 작업자 컨텍스트 내에서 WebHID를 사용 설정합니다. 이를 통해 별도의 스레드에서 많은 I/O 및 HID 기기의 데이터 처리를 실행하여 기본 스레드에 미치는 성능 영향을 줄일 수 있습니다.
WebRTC RTCRtpEncodingParameters.scaleResolutionDownTo
입력 프레임이 지정된 maxWidth
및 maxHeight
보다 큰 경우 크기를 조절하도록 WebRTC 인코더를 구성하는 API입니다. 이 API는 scaleResolutionDownBy
와 유사하지만 해상도 제약 조건이 상대적 용어 (예: 2배 축소)가 아닌 절대 용어 (예: 640x360)로 표현된다는 점을 제외하고는 동일합니다. 따라서 실시간으로 입력 프레임 크기를 변경하는 것과 관련된 경합 상태를 방지할 수 있습니다.
새로운 오리진 트라이얼
Chrome 131에서는 다음과 같은 새로운 출처 무료 체험판을 선택할 수 있습니다.
WebAudio의 재생 통계
AudioContext.playoutStats
기능을 사용하면 애플리케이션이 WebAudio를 사용하여 오디오 재생의 품질과 지연 시간을 측정할 수 있습니다.
Summarizer API
AI 언어 모델을 기반으로 입력 텍스트의 요약을 생성하는 JavaScript API입니다.
지원 중단 및 삭제
이 버전의 Chrome에서는 다음과 같은 지원 중단 및 삭제가 적용됩니다. ChromeStatus.com에서 예정된 지원 중단, 현재 지원 중단, 이전 삭제 목록을 확인하세요.
이 Chrome 출시에서는 세 가지 기능이 삭제됩니다.
CSS 앵커 포지셔닝 속성 inset-area
삭제
inset-area
속성의 이름을 position-area
로 바꾸는 CSS 작업 그룹의 결정에 따라 이 삭제는 표준 준수 기능을 위한 Chromium의 구현을 정리합니다.
BeforeunloadEventCancelByPreventDefault
사용 중지 기능 삭제
BeforeunloadEventCancelByPreventDefault
기능은 Chrome 117에서 출시되었지만 이 플래그를 강제로 사용 중지할 수 있는 엔터프라이즈 정책이 있습니다. 이 기업 정책은 Chrome 131에서 삭제됩니다.
비표준 GPUAdapter requestAdapterInfo()
메서드 삭제
WebGPU 작업 그룹은 requestAdapterInfo()
가 권한 메시지를 트리거하는 것이 실용적이지 않다고 판단하여 해당 옵션을 삭제하고 GPUAdapter info
속성으로 대체했습니다. 이를 통해 웹 개발자는 동기식으로 동일한 GPUAdapterInfo
값을 가져올 수 있습니다.