게시일: 2025년 6월 25일
별도로 명시되지 않는 한 다음 변경사항은 Android, ChromeOS, Linux, macOS, Windows용 최신 Chrome 베타 채널 버전에 적용됩니다. 제공된 링크 또는 ChromeStatus.com의 목록을 통해 여기에 나열된 기능에 대해 자세히 알아보세요. 2025년 6월 25일 현재 Chrome 139는 베타입니다. 데스크톱의 경우 Google.com에서, Android의 경우 Google Play 스토어에서 최신 버전을 다운로드할 수 있습니다.
CSS
이 출시 버전에는 6가지 새로운 CSS 및 UI 기능이 추가되었습니다.
var()
및 attr()
단락
대체가 사용되지 않으면 var()
및 attr()
함수는 해당 대체에서 순환을 찾지 않고 평가됩니다. --green
및 --blue
이 있으므로 다음 CSS가 작동합니다.
--green: green;
--blue: blue;
--a: var(--green, var(--b));
--b: var(--blue, var(--a));
CSS caret-animation
속성
Chrome은 이미 caret-color
속성의 애니메이션을 지원했지만 애니메이션 처리 시 캐럿의 기본 깜박임 동작이 애니메이션을 방해했습니다. CSS caret-animation
속성에는 auto
및 manual
의 두 가지 값이 있을 수 있습니다. 여기서 auto
은 브라우저 기본값 (깜박임)을 의미하고 manual
은 웹 개발자가 캐럿 애니메이션을 제어하고 있음을 의미합니다. 이 속성을 사용하면 사용자가 사용자 스타일시트를 사용하여 깜박임을 사용 중지할 수도 있습니다.
모서리 모양
모양이나 모서리의 곡률을 지정하여 기존 border-radius
위에 모서리 스타일을 사용 설정합니다. 이를 통해 스쿼클, 노치, 스쿱과 같은 모양을 만들고 모양 간에 애니메이션을 적용할 수 있습니다. Amit Sheen의 이 게시물에서 자세히 알아보세요.
초기 전환 값으로 전환할 때 전환을 계속 실행합니다.
전환 관련 속성이 변경되면 새로 시작된 전환에만 영향을 미쳐야 합니다. 즉, 전환 속성을 변경하는 경우 활성 전환 애니메이션이 있는 속성도 변경하지 않으면 이러한 전환 애니메이션은 이전에 지정된 지속 시간, 이징 등으로 계속됩니다. 전환 속성이 'none'으로 설정된 경우 전환-지속 시간만 변경하면 취소되지 않지만 Blink는 전환을 잘못 취소했습니다. 이 기능을 사용하면 blink가 webkit 및 gecko와 일관되므로 속성 값이 변경되어 새로운 전환 업데이트가 트리거되지 않는 한 활성 전환이 계속 실행될 수 있습니다.
CSS 맞춤 함수
맞춤 함수는 맞춤 속성과 비슷하지만 단일 고정 값을 반환하는 대신 다른 맞춤 속성, 매개변수, 조건에 따라 값을 반환합니다.
@function --negate(--value) {
result: calc(var(--value) * -1);
}
div {
--gap: 1em;
margin-top: --negate(var(--gap));
}
중첩된 <svg>
요소에서 width
및 height
을 프레젠테이션 속성으로 지원
SVG 마크업과 CSS를 모두 통해 중첩된 <svg>
요소에 width
및 height
를 프레젠테이션 속성으로 적용하는 것을 지원합니다. 이중 접근 방식을 사용하면 복잡한 디자인 내에서 SVG 요소를 보다 효율적으로 관리하고 스타일을 지정할 수 있어 유연성이 더욱 높아집니다.
Web API
웹 앱 매니페스트: 업데이트 자격 요건 지정, 아이콘 URL은 Cache-Control: immutable
매니페스트 사양에 업데이트 자격 요건 알고리즘을 지정합니다. 이렇게 하면 업데이트 프로세스가 더 결정적이고 예측 가능해지므로 개발자가 기존 설치에 업데이트를 적용할지 여부와 시기를 더 세부적으로 관리할 수 있으며, 현재 사용자 에이전트가 네트워크 리소스 낭비를 방지하기 위해 구현해야 하는 '업데이트 확인 제한'을 삭제할 수 있습니다.
WebXR 깊이 감지 성능 개선
깊이 감지 기능의 동작을 WebXR 세션 내에서 맞춤설정하는 여러 새로운 메커니즘을 노출하여 깊이 버퍼의 생성 또는 소비 성능을 개선합니다. 노출된 주요 메커니즘은 원시 또는 부드러운 깊이 버퍼를 요청하는 기능, 런타임이 깊이 버퍼 제공을 중지하거나 재개하도록 요청하는 기능, 사용자 에이전트가 매 프레임마다 불필요한 재투영을 실행하지 않도록 사용자의 뷰와 정확히 정렬되지 않는 깊이 버퍼를 노출하는 기능입니다.
JavaScript DOM API에서 더 많은 문자 허용
HTML 파서는 항상 (또는 오랫동안) 요소와 속성이 다양한 유효한 문자와 이름을 갖도록 허용했지만 동일한 요소와 속성을 만드는 JavaScript DOM API는 더 엄격하며 파서와 일치하지 않습니다. 이 변경사항은 HTML 파서와 일치하도록 JavaScript DOM API의 유효성 검사를 완화합니다.
request-close
호출자 명령어
대화상자 요소는 다양한 메커니즘을 통해 닫을 수 있지만 개발자는 때때로 닫기를 방지할 수 있는 기능을 원합니다. 이를 위해 대화상자는 취소 이벤트를 발생시킵니다. 원래는 닫기 요청 (예: Esc
키 누르기)을 통해서만 실행되었지만 최근에 취소 이벤트를 실행하는 requestClose()
JS 함수가 추가되었습니다. request-close
명령어는 선언적 호출기 명령어 API에 새로운 기능을 제공합니다.
WebGPU: BC 및 ASTC 압축 형식의 3D 텍스처 지원
texture-compression-bc-sliced-3d
및 texture-compression-astc-sliced-3d
WebGPU 기능은 각각 BC 및 ASTC 압축 형식에 3D 텍스처 지원을 추가합니다.
보안 결제 확인: 브라우저 바운드 키
보안 결제 확인 어설션 및 사용자 인증 정보 생성에 추가 암호화 서명을 추가합니다. 해당 비공개 키가 기기 간에 동기화되지 않습니다. 이를 통해 웹 개발자는 결제 거래의 기기 바인딩 요구사항을 충족할 수 있습니다.
보안 결제 확인: UX 새로고침
Android Chrome에서 SPC 대화상자의 UX 요소를 업데이트합니다. 단순한 UX 프레젠테이션 외에도 다음이 추가됩니다.
- 판매자가 표시될 결제와 관련된 결제 법인 로고의 선택적 목록을 제공할 수 있습니다.
- 사용자가 SPC 없이 거래를 계속할지 아니면 거래를 취소할지에 따라 판매자에게 다른 출력 상태를 반환합니다.
- 텍스트가 두 줄에 걸쳐 표시되도록 지급 수단에 새 결제 세부정보 라벨 필드를 추가합니다.
WebGPU core-features-and-limits
core-features-and-limits
기능은 WebGPU 어댑터와 기기가 사양의 핵심 기능과 제한을 지원함을 나타냅니다.
스크롤 고정 우선순위 후보 수정
현재 스크롤 고정 알고리즘은 우선순위 후보가 앵커 타겟으로 사용 가능한 경우 이를 선택합니다. 우선순위 후보는 현재 포커스가 있는 수정 가능한 요소와 페이지 내 검색 강조 표시입니다. 이로 인해 화면 밖에서 콘텐츠가 변경된 포커스가 맞춰진 큰 contenteditable 요소가 있는 경우 사용자 환경이 최적화되지 않을 수 있습니다 (결과적으로 커서가 이동함). 이 수정사항은 알고리즘을 변경합니다. 우선순위 후보를 앵커로 선택하는 대신 후보를 앵커로 가장 깊은 화면 요소를 선택하는 일반 앵커 선택 알고리즘의 범위 또는 루트로 사용합니다.
SVG <script>
요소의 async
속성 지원
SVG 2.0의 SVGScriptElement
인터페이스는 HTMLScriptElement
와 유사한 async
속성을 도입합니다. 이 속성을 사용하면 스크립트를 비동기적으로 실행할 수 있으므로 SVG를 사용하는 웹 애플리케이션의 성능과 응답성이 개선됩니다.
기기 내 Web Speech API
이 기능은 Web Speech API에 기기 내 음성 인식 지원을 추가하여 웹사이트가 오디오나 스크립트가 처리되도록 서드 파티 서비스로 전송되지 않도록 할 수 있습니다. 웹사이트는 특정 언어의 온디바이스 음성 인식 사용 가능 여부를 쿼리하고, 사용자에게 온디바이스 음성 인식에 필요한 리소스를 설치하라는 메시지를 표시하고, 필요에 따라 온디바이스 또는 클라우드 기반 음성 인식을 선택할 수 있습니다.
브라우징 컨텍스트 그룹을 전환하는 크로스 사이트 탐색에서 window.name
삭제
window.name
속성 값은 현재 탐색이 브라우징 컨텍스트 그룹을 전환하는 경우에도 탭의 수명 동안 유지되므로 정보가 유출될 수 있고 추적 벡터로 사용될 수 있습니다.
window.name
속성을 지우면 이 문제가 해결됩니다. 이름으로 탐색 컨텍스트를 조회하는 것은 이미 다른 탐색 컨텍스트 그룹에 있는 경우 작동하지 않으므로 이름이 실제로 유용하지 않기 때문에 위험이 낮은 변경사항입니다.
엔터프라이즈 정책: ClearWindowNameCrossSiteBrowsing
(Chrome 142에서 작동 중지됨)
웹 앱 범위 확장 프로그램
웹 앱이 범위를 다른 출처로 확장할 수 있도록 하는 "scope_extensions"
웹 앱 매니페스트 필드를 추가합니다.
이를 통해 여러 하위 도메인과 최상위 도메인을 관리하는 사이트가 단일 웹 앱으로 표시될 수 있습니다. 나열된 출처가 .well-known/web-app-origin-association
구성 파일을 사용하여 웹 앱과의 연결을 확인해야 합니다.
사양 준수 JSON MIME 유형 감지
이제 Chromium은 WHATWG mimesniff 사양에 정의된 모든 유효한 JSON MIME 유형을 인식합니다. 여기에는 기존 application/json
및 text/json
외에도 하위 유형이 +json
로 끝나는 모든 MIME 유형이 포함됩니다. 이 변경사항을 통해 JSON 감지에 의존하는 웹 API와 기능이 웹 플랫폼 표준 및 다른 브라우저와 일관되게 동작합니다. 이 변경의 주요 동기는 이전에 유효했던 JSON MIME 유형(예: text/html+json
및 image/svg+json
)이 모듈로 로드되지 않는 JSON 모듈 가져오기 동작을 수정하는 것입니다.
Private Aggregation API: 집계 오류 보고
비공개 집계 API를 사용할 때 발생할 수 있는 다양한 오류 조건이 있습니다. 예를 들어 개인 정보 보호 예산이 소진되어 더 이상 히스토그램을 제공할 수 없습니다. 이 기능을 사용하면 개발자가 특정 유형의 오류가 발생한 경우에만 전송해야 하는 히스토그램 기여를 등록할 수 있습니다. 이 기능은 오류 조건의 빈도를 측정하고 관련 개발자 지정 측정기준 (예: 배포된 코드 버전)에 따라 이러한 측정을 분할하는 것을 지원합니다. 오류 자체가 크로스 사이트 정보일 수 있으므로 서드 파티 쿠키가 없는 사용자의 페이지에 오류를 간단히 노출할 수 없습니다. 대신 이 기능은 집계 서비스에서 기존의 집계되고 노이즈가 추가된 보고 파이프라인을 재사용합니다.
비정상 종료 보고 API: 비정상 종료 보고만 수신하도록 지정
이 기능은 crash-reporting
라는 엔드포인트를 지정하여 개발자가 비정상 종료 보고서만 수신하도록 합니다. 기본적으로 비정상 종료 보고서는 비정상 종료 보고서 외에도 다양한 종류의 보고서를 수신하는 default
엔드포인트로 전송됩니다. 개발자는 default
엔드포인트 대신 crash-reporting
라는 잘 알려진 엔드포인트에 별도의 URL을 제공하여 비정상 종료 보고서를 해당 엔드포인트로 보낼 수 있습니다.
Accept-Language
헤더 정보에서 디지털 지문 감소
Accept-Language
헤더 값 문자열이 HTTP 요청 및 navigator.languages
에서 노출하는 정보의 양을 줄입니다. Accept-Language
헤더를 사용하여 모든 HTTP 요청에서 사용자의 기본 언어 전체 목록을 전송하는 대신 이제 Accept-Language
헤더에 사용자가 가장 선호하는 언어가 전송됩니다. 호환성 위험을 최소화하기 위해 초기 출시에서는 HTTP 헤더의 정보가 줄어들며, 향후 관련 navigator.languages
JavaScript getter가 줄어들 예정입니다.
CSP에 의해 차단된 작업자에 대한 예외를 발생시키는 대신 오류 이벤트 실행
콘텐츠 보안 정책 (CSP)에 의해 차단되면 현재 Chrome은 Worker 및 SharedWorker의 생성자에서 SecurityError
를 발생시킵니다. 사양에 따라 CSP는 가져오기의 일부로 확인되어야 하며 스크립트가 new
Worker(url)
또는 new SharedWorker(url)
을 실행할 때 예외를 발생시키는 대신 오류 이벤트를 비동기식으로 실행해야 합니다. 이 변경사항은 생성자 중에 예외를 발생시키지 않고 오류 이벤트를 비동기식으로 실행하여 Chrome이 사양을 준수하도록 합니다.
RTC 인코딩 프레임의 오디오 수준
RTCPeerConnection
로 전송되고 WebRTC 인코딩 변환을 사용하여 노출된 인코딩된 프레임의 오디오 수준을 웹에 노출합니다.
새 오리진 트라이얼
Chrome 139에서는 다음 새로운 오리진 트라이얼을 선택할 수 있습니다.
Prompt API
프롬프트 API는 텍스트, 이미지, 오디오 입력을 사용하여 AI 언어 모델과 상호작용하도록 설계되었습니다. 이미지 캡션 생성, 시각적 검색 실행, 오디오 스크립트 작성, 소리 이벤트 분류, 특정 지침에 따른 텍스트 생성, 텍스트에서 정보 또는 통계 추출 등 다양한 사용 사례를 지원합니다. 구조화된 출력을 지원하여 응답이 사전 정의된 형식(일반적으로 JSON 스키마로 표현됨)을 준수하도록 보장하여 응답 준수성을 향상하고 표준화된 출력 형식이 필요한 다운스트림 애플리케이션과의 원활한 통합을 지원합니다. 이 API는 Chrome 확장 프로그램에도 노출됩니다. 이 오리진 트라이얼은 웹에 노출하기 위한 것입니다.
전체 프레임 속도 렌더링 차단 속성
차단 속성에 새로운 렌더링 차단 토큰 전체 프레임 속성을 추가할 것을 제안합니다. 렌더러가 전체 프레임 속도 토큰으로 차단되면 렌더러는 로드를 위해 더 많은 리소스를 예약할 수 있도록 더 낮은 프레임 속도로 작동합니다.
WebGPU 호환성 모드
OpenGL 및 Direct3D11과 같은 이전 그래픽 API를 실행할 수 있는 선택적이고 약간 제한된 WebGPU API 하위 집합을 추가합니다. 이 모드를 선택하고 제약 조건을 준수하면 개발자는 핵심 WebGPU에 필요한 최신 명시적 그래픽 API가 없는 많은 이전 기기로 WebGPU 애플리케이션의 도달 범위를 확장할 수 있습니다. 간단한 애플리케이션의 경우 requestAdapter
호출 시 "compatibility"
featureLevel을 지정하는 것만 변경하면 됩니다. 고급 애플리케이션의 경우 모드의 제한사항을 수용하기 위해 일부 수정이 필요할 수 있습니다. 호환성 모드는 하위 집합이므로 결과 애플리케이션도 유효한 WebGPU 핵심 애플리케이션이며 호환성 모드를 지원하지 않는 사용자 에이전트에서도 실행됩니다.
지원 중단 및 삭제
이 버전의 Chrome에서는 아래에 나열된 지원 중단 및 삭제가 도입되었습니다. 계획된 지원 중단, 현재 지원 중단, 이전 삭제 목록은 ChromeStatus.com을 참고하세요.
이 Chrome 버전에서는 두 가지 기능이 삭제됩니다.
macOS 11 지원 삭제
Chrome 138은 macOS 11을 지원하는 마지막 버전입니다. Chrome 139부터는 Apple에서 더 이상 지원하지 않는 macOS 11이 지원되지 않습니다. 보안 유지를 위해서는 지원되는 운영체제에서 실행하는 것이 필수적입니다. macOS 11을 실행하는 Mac에서는 Chrome이 계속 작동하며, 경고 정보 표시줄이 표시되지만 더 이상 업데이트되지 않습니다. 사용자가 Chrome을 업데이트하려면 지원되는 macOS 버전으로 컴퓨터를 업데이트해야 합니다. Chrome 139 이상을 새로 설치하려면 macOS 12 이상이 필요합니다.
HTML에서 ISO-2022-JP 문자 집합 자동 감지 삭제
ISO-2022-JP의 문자 집합 자동 감지와 관련해 알려진 보안 문제가 있습니다. 사용량이 매우 적고 Safari에서 ISO-2022-JP의 자동 감지를 지원하지 않으므로 Chrome에서는 보안 문제를 해결하기 위해 지원을 삭제합니다.