 Add custom style to your picture-in-picture elements with the new picture-in-picture pseudo class. Set your web app launch behavior with Launch Handler in your manifest. Use the credentialist attribute in iFrames to embed third-party content that doesn't set a cross-origin and better policy. And there's plenty more. I'm Adriana Jara. Let's dive in and see what's soon for developers in Chrome 110. With the picture-in-picture API, websites can create a floating video window that's always on top so that users continue consuming media while interacting with other content. Now, with the picture-in-picture CSS pseudo class, you can add styles to the elements to improve the experience. The snippet on the screen shows how to use the picture-in-picture class to add a message to the video container that reminds the user the video is now playing somewhere else. We use the pseudo class again on the video element. To display the message correctly, we make the element transparent. Check out the link in the description to play with example and improve your picture-in-picture video experiences. The Launch Handler API lets you control how your web app launches. For example, whether it uses an existing or a new window and whether it shows in window, it's navigated to the Launch URL. Let's look at an example. In desktop environments, if you install an app and then visit it on the browser, there is a button to move to the standalone app window. And for a while, the only possible behavior was to launch the app in a new window. Now, using the Launch Handler Manifest member, web apps can customize their launch behavior. For example, the snippet on the screen causes all these web apps' launches to focus on an existing app window and navigate to it if it exists, instead of always launching a new window. For more details, check out the documentation linked in the description. One of the biggest challenges with cross-origin isolation is that all cross-origin iframes must deploy cross-origin embedded policy or co-app and cross-origin resource policy or corp. Iframes without those headers will not be loaded by the browser. The credentialist attribute helps to embed third-party iframes that don't set these headers. With credentialists, the iframe is loaded from a different empty context. In particular, it is loaded without cookies. The iframe starts with an empty cookie jar. Likewise, storage APIs, such as localStorage, cacheStorage, and so on, load and store data in a new ephemeral partition. All this storage is cleared once the top-level document is unloaded. This allows for removing the co-app restriction. Find more information in the link in the description to securely use credentialists to load third-party content into your iframes. And of course, there's plenty more. Web SQL is now removed in non-secure context. The CSS initial-letter property provides a way to set the number of lines that an initial letter should sink into the following lines of text. File System Handle now includes a remove method. All the details, including links, docs, and specs are in the post linked in the description. Hit the Subscribe button now so that you don't miss the latest Chrome DevTools video, GUI challenges, HTTP 203, and more. Yo soy Adriana Jara, and as soon as Chrome 111 is released, I'll be right here to tell you what's new in Chrome.