View in English

  • Apple Developer
    • 시작하기

    시작하기 탐색

    • 개요
    • 알아보기
    • Apple Developer Program

    알림 받기

    • 최신 뉴스
    • Hello Developer
    • 플랫폼

    플랫폼 탐색

    • Apple 플랫폼
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    • App Store

    피처링

    • 디자인
    • 배포
    • 게임
    • 액세서리
    • 웹
    • 홈
    • CarPlay
    • 기술

    기술 탐색

    • 개요
    • Xcode
    • Swift
    • SwiftUI

    피처링

    • 손쉬운 사용
    • AI 및 머신러닝
    • 앱 인텐트
    • Apple Intelligence
    • 게임
    • 보안
    • Xcode Cloud
    • 커뮤니티

    커뮤니티 탐색

    • 개요
    • Apple과의 만남 이벤트
    • 커뮤니티 주도 이벤트
    • 개발자 포럼
    • 오픈 소스

    피처링

    • WWDC
    • Swift Student Challenge
    • 개발자 이야기
    • App Store 어워드
    • Apple 디자인 어워드
    • 문서

    문서 탐색

    • 문서 라이브러리
    • 기술 개요
    • 샘플 코드
    • 휴먼 인터페이스 가이드라인
    • 비디오

    릴리즈 노트

    • 피처링 업데이트
    • iOS
    • iPadOS
    • macOS
    • watchOS
    • visionOS
    • tvOS
    • Xcode
    • 다운로드

    다운로드 탐색

    • 모든 다운로드
    • 운영 체제
    • 애플리케이션
    • 디자인 리소스

    피처링

    • Xcode
    • TestFlight
    • 서체
    • SF Symbols
    • Icon Composer
    • 지원

    지원 탐색

    • 개요
    • 도움말
    • 개발자 포럼
    • 피드백 지원
    • 문의하기

    피처링

    • 계정 도움말
    • 앱 심사 지침
    • App Store Connect 도움말
    • 새로 추가될 요구 사항
    • 계약 및 지침
    • 시스템 상태
  • 빠른 링크

    • 이벤트
    • 뉴스
    • 포럼
    • 샘플 코드
    • 비디오
 

비디오

메뉴 열기 메뉴 닫기
  • 컬렉션
  • 전체 비디오
  • 소개

더 많은 비디오

  • 소개
  • 요약
  • Safari 및 웹 기술 그룹 랩

    Apple 엔지니어들과 함께 WWDC26를 심층적으로 소개하는 세션에 온라인으로 함께하세요. 질문을 하고, 조언을 얻으며, 일주일간의 Safari 및 웹 기술 관련 주요 발표 내용들에 대한 토론을 확인할 수 있습니다. 영어로 진행됩니다.

    챕터

    • 0:00:00 - Introduction
    • 0:04:44 - What web technologies or APIs should every new web developer learn today to prepare for the future of the web?
    • 0:10:05 - What upcoming web standards is the team most excited about?
    • 0:16:07 - I'm a native app developer and noticed Safari can sometimes be more performant than native in UI/UX for JavaScript-driven apps. How is this possible?
    • 0:19:19 - How should web developers advocate for the web features they want WebKit to support (and what shouldn't they do)? Do WebKit standards positions factor in our reports?
    • 0:27:05 - Is there any improvement to cookie synchronization in WKWebView, similar to what UIWebView used to provide?
    • 0:27:36 - Excited that we can create extensions from a prompt. Are there plans to close the API gap with what Chrome and Firefox offer (e.g. Tab Group APIs)?
    • 0:29:36 - With spatial CSS, will I see things in 3D on Apple Vision Pro coming from the web?
    • 0:30:53 - Have we reached the 'end-game' for web optimization and performance, or is there more to squeeze out of the browser?
    • 0:35:11 - I want a Safari extension for SEO that takes page content and shows reports in a SwiftUI window across platforms. What path do you recommend?
    • 0:36:15 - Progressively enhancing an existing select with appearance-base
    • 0:41:22 - How the model element handles loading states and errors
    • 0:43:52 - How large 3D models should be on the web
    • 0:47:26 - How extension permissions work in Safari vs. other browsers
    • 0:49:13 - How the immersive API interacts with existing web content
    • 0:50:05 - The model element as a first step into the spatial web
    • 0:51:43 - How much appearance-base select styling works out of the box
    • 0:56:39 - Porting an existing Chrome or Firefox extension to Safari
    • 0:58:46 - Closing thoughts: what the panel wants web developers to know

    리소스

      • HD 비디오
      • SD 비디오
  • 비디오 검색…
    • 0:00:00 - Introduction
    • Engineers and evangelists from the Safari and WebKit teams introduce themselves and set up a session covering the fundamentals of web development, upcoming web standards, WebKit's standards process, Safari extensions, spatial web features, and web performance.

    • 0:04:44 - What web technologies or APIs should every new web developer learn today to prepare for the future of the web?
    • The fundamentals still matter most: understand why the web has HTML, CSS, and JavaScript and what each is for. Invest in semantic HTML — which keeps expanding, so things that once required JavaScript can now be done declaratively — and learn CSS layout deeply. A strong grasp of the core three languages is the best preparation for whatever comes next.

    • 0:10:05 - What upcoming web standards is the team most excited about?
    • A highlight is the newly founded Web Extensions Working Group. After five years in a community group meeting biweekly, the work is moving to a formal specification for the WebExtensions API, pushing toward real interoperability across browsers — a meaningful step for extension developers.

    • 0:16:07 - I'm a native app developer and noticed Safari can sometimes be more performant than native in UI/UX for JavaScript-driven apps. How is this possible?
    • The web platform is genuinely capable — early iOS even considered shipping only web apps, and some first-party apps were originally built that way. Modern WebKit is highly optimized, so a well-built web app can feel excellent. The trade-off is that reaching that quality on the web is harder to sustain, which is why native remains valuable, but strong web performance is very achievable.

    • 0:19:19 - How should web developers advocate for the web features they want WebKit to support (and what shouldn't they do)? Do WebKit standards positions factor in our reports?
    • The team genuinely wants to hear from developers. File issues at bugs.webkit.org and engage with the evangelists on social media. What helps most is clear signal about which features matter and why — there are more good ideas than people to build them, so concrete, well-explained demand and real use cases help prioritize the work.

    • 0:27:05 - Is there any improvement to cookie synchronization in WKWebView, similar to what UIWebView used to provide?
    • The recommended approach is to use HTTPCookieStore to observe and manipulate cookies for WKWebView, keeping them in sync between your app and the web view. The panel didn't have a cookies specialist present, so for deeper cases they suggested following up through the forums.

    • 0:27:36 - Excited that we can create extensions from a prompt. Are there plans to close the API gap with what Chrome and Firefox offer (e.g. Tab Group APIs)?
    • The team is enthusiastic about users generating extensions from a prompt to tailor their browsing. On closing the API gap, the direction is toward greater interoperability — the new WebExtensions Working Group is the vehicle for standardizing and expanding API coverage. Specific additions like Tab Group APIs are best raised and tracked through the developer forums and WebKit.

    • 0:29:36 - With spatial CSS, will I see things in 3D on Apple Vision Pro coming from the web?
    • Spatial CSS is currently a proposal with no shipping news, though it's something the team feels positively about. What exists today is the inline HTML element for placing USD and other 3D formats into a page — you can drag models out and, with immersive environments, view them at full scale and create scenes procedurally.

    • 0:30:53 - Have we reached the 'end-game' for web optimization and performance, or is there more to squeeze out of the browser?
    • There's still plenty of headroom — teams work on engine performance continuously. Developers often focus on their own JavaScript speed and image loading to get a usable page in front of users fast, while WebKit engineers keep improving how quickly a browsing experience becomes responsive. Performance work on both sides is ongoing, not finished.

    • 0:35:11 - I want a Safari extension for SEO that takes page content and shows reports in a SwiftUI window across platforms. What path do you recommend?
    • Combine extension UI with your app. Use an extension popup for lightweight display, and the web navigation APIs to monitor page changes. To pass data between the extension and your native app for richer SwiftUI reporting, use native messaging. Those pieces let you surface page insights in your own UI across iOS, macOS, and visionOS.

    • 0:36:15 - Progressively enhancing an existing select with appearance-base
    • Build the select the traditional way first — always include real text content for every option — then layer images, extra content, and CSS on top. Supporting browsers get all the styling; unsupporting ones fall back to the text list automatically, with no extra developer work. Text content is also essential for accessibility (screen readers announce it) and UX (icon- or color-only options are hard to recognize). This works because select was designed for progressive enhancement on purpose — the original selectmenu proposal was dropped in favor of reusing select so older browsers get a good fallback.

    • 0:41:22 - How the model element handles loading states and errors
    • The model element exposes a ready promise signaling when the model has loaded, so you can show a spinner while loading and hide it when ready. As with images, there is a distinction between downloading an asset's bytes and having the resource actually loaded and usable — the same applies to models, including ones generated procedurally in JavaScript, and you can observe and present UI for each phase. There isn't a dedicated CSS pseudo-class for the loading state yet; the panel noted that as good feedback.

    • 0:43:52 - How large 3D models should be on the web
    • Keep models small and optimize them before publishing, just as with images — larger models mean longer download and processing time, and memory is finite. There are no hard guidelines, but a model that is content on a page generally shouldn't be larger than the page, so textures and geometry only need enough detail for how it is displayed. Maximum visual quality is often reachable around ten megabytes — larger than an equivalent image, but reasonable given the motion and interactivity. Full-screen immersive environments can legitimately be larger. Tooling is improving too: USDCrush now compresses textures to AVIF rather than JPEG, and mesh-compression formats are under discussion.

    • 0:47:26 - How extension permissions work in Safari vs. other browsers
    • Safari's extension permission model is designed with user privacy first. Manifest-requested permissions aren't automatically granted — the user decides which sites an extension runs on, and Safari is clear about what a granted extension can do. Because developers often can't predict which sites a user will visit, they may over-request host permissions; the active-tab permission is a good workaround, granting access only to the current tab and dropping host permissions once the user navigates away.

    • 0:49:13 - How the immersive API interacts with existing web content
    • In an immersive environment the web page is still present, so anything you need to do on that page remains available. It is a single-app experience: other apps alongside (like Messages) may dim, and a crown press restores the shared view. If you want the page to alter the immersive environment — moving your position, or playing or pausing an animation — you can put whatever UI you need onto the web page for the user to control it.

    • 0:50:05 - The model element as a first step into the spatial web
    • The model element is the first and easiest step for web developers to experience 3D and the spatial web — least friction, quick compelling results. You don't need an existing model: find one online, or use modern generation tools to create 3D models (creatively, or reconstructed from a set of images). From there it is a natural progression into learning more about 3D and tools like Blender. For everyday developers curious about spatial, starting with the model element is the recommendation.

    • 0:51:43 - How much appearance-base select styling works out of the box
    • With appearance-base select, the layout works correctly out of the box and the control inherits your page's styling — font, background color, font color — rather than a custom UA font, a big improvement over appearance:none. The standout is pseudo-element access: you can target and style individual parts (the picker icon, the drop-down menu, the checkmark) without affecting the rest. It is 100% interoperable across engines with a consistent underlying DOM — the foundation that makes reliable custom styling possible. Appearance-base for all form controls (not just select) is still in progress. The one open discussion is what the default should look like — the intent is for the UA stylesheet to carry as little opinion as possible and inherit as much as possible from the existing site.

    • 0:56:39 - Porting an existing Chrome or Firefox extension to Safari
    • How much work it takes depends on the extension — some convert and work out of the box; others rely on browser-specific APIs Safari may not support. To test, open the Develop menu and load a temporary extension using your existing Chrome or Firefox extension resources, then see what works. If an API behaves differently across browsers, raise it in the WebExtensions community and working group, or file a bug on bugs.webkit.org or via Feedback Assistant. There are no grave manifest differences across browsers, and Safari deliberately doesn't fail on unsupported manifest keys — a specific choice to ease migration.

    • 0:58:46 - Closing thoughts: what the panel wants web developers to know
    • Each panelist shared a closing thought: the Safari 27 beta release notes are exceptionally long this year — roughly twice normal — reflecting a major effort to fix long-standing paper cuts (including rewriting the JavaScript module loader to fix the top-level-await bug), and WebKit genuinely wants developers' bug reports. Extension support now lives in WebKit, so you can contribute code and file bugs directly. Recurring themes: play with the model element and enjoy 3D on the web, and lean on how much modern web standards do for you — you may be able to build with far fewer frameworks than expected. A closing wish: show off Safari-first standards like the random() and filter() functions and hanging punctuation.

Developer 바닥글

  • 비디오
  • WWDC26
  • Safari 및 웹 기술 그룹 랩
  • 메뉴 열기 메뉴 닫기
    • iOS
    • iPadOS
    • macOS
    • tvOS
    • visionOS
    • watchOS
    메뉴 열기 메뉴 닫기
    • Swift
    • SwiftUI
    • Swift Playground
    • TestFlight
    • Xcode
    • Xcode Cloud
    • SF Symbols
    메뉴 열기 메뉴 닫기
    • 손쉬운 사용
    • 액세서리
    • Apple Intelligence
    • 앱 확장 프로그램
    • App Store
    • 오디오 및 비디오(영문)
    • 증강 현실
    • 디자인
    • 배포
    • 교육
    • 서체(영문)
    • 게임
    • 건강 및 피트니스
    • 앱 내 구입
    • 현지화
    • 지도 및 위치
    • AI 및 머신러닝
    • 오픈 소스(영문)
    • 보안
    • Safari 및 웹(영문)
    메뉴 열기 메뉴 닫기
    • 문서(영문)
    • 튜토리얼
    • 다운로드
    • 포럼(영문)
    • 비디오
    메뉴 열기 메뉴 닫기
    • 지원 문서
    • 문의하기
    • 버그 보고
    • 시스템 상태(영문)
    메뉴 열기 메뉴 닫기
    • Apple Developer
    • App Store Connect
    • 인증서, 식별자 및 프로파일(영문)
    • 피드백 지원
    메뉴 열기 메뉴 닫기
    • Apple Developer Program
    • Apple Developer Enterprise Program
    • App Store Small Business Program
    • MFi Program(영문)
    • Mini Apps Partner Program
    • News Partner Program(영문)
    • Video Partner Program(영문)
    • Security Bounty Program(영문)
    • Security Research Device Program(영문)
    메뉴 열기 메뉴 닫기
    • Apple과의 만남
    • Apple Developer Center
    • App Store 어워드(영문)
    • Apple 디자인 어워드
    • Apple Developer Academy(영문)
    • WWDC
    최신 뉴스 읽기.
    Apple Developer 앱 받기.
    Copyright © 2026 Apple Inc. 모든 권리 보유.
    약관 개인정보 처리방침 계약 및 지침